字符串所有组合的问题

 1   
 2$data = "abcdefghijk"; //测试串,长度任意。越长则运行时间越长   
 3preg_match_all("/./",$data,$r); //按字符分裂成数组   
 4$ar = $r[0];   
 5  
 6/**   
 7递归函数,参数   
 8$ar 数据数组   
 9$m 组合串的长度   
10$s 工作变量,用于缓存中间量   
11**/   
12function foo($ar,$m,$s='') {   
13if($m == 0) {   
14echo "$s

<br/>

1"; //如果长度够了则输出结果   
2}else {   
3for($i=0;$i<count($ar);$i++) {   
4foo($ar,$m-1,$s.$ar[$i]); //递归   
5}   
6}   
7}   
8  
9foo($ar,5);   
Published At
Categories with Web编程
comments powered by Disqus