本文实例讲述了PHP实现给定一列字符,生成指定长度的所有可能组合。分享给大家供大家参考,具体如下:
给定一列字符,生成指定长度的所有可能的组合:
如:a,b,c,d,e 或 0-9
生成长度 1:a, b, c, d, e; 长度2 :aa, ab, ac, ad, ae, ba, bb, bc, bd, be,................ee
<?php
function de($len, $pos = 0) {
static $bit = [];
static $source = ['a', 'b', 'c', 'd', 'e'];/*[0, 1, 2, 3, 4, 5, 6, 7, 8, 9];*/
$pos++;
for($i = 0; $i < count($source); $i++) {
$bit[$pos] = $source[$i];
if ($pos < $len) {
de($len, $pos);
} else {
echo implode('', $bit)."\n";
}
}
}
用phpcmd小助手(https://github.com/dclnet/phpcmd)运行代码
以上为长度为1
长度为2的。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php正则表达式用法总结》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:使用php计算排列组合的方法浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)php通过排列组合实现1到9数字相加都等于20的方法PHP实现的简单排列组合算法应用示例php求数组全排列,元素所有组合的方法总结PHP输出多个元素的排列或组合的方法php求数组全排列,元素所有组合的方法php生成数组的使用示例 php全组合算法组合算法的PHP解答方法