ホームページ >php教程 >PHP源码 >php输出字符串全排列

php输出字符串全排列

PHP中文网
PHP中文网オリジナル
2016-05-25 17:07:451507ブラウズ

php代码

function output($temp,$level)
 {
	for($i=0;$i<$level;$i++)
	{
		echo $temp[$i];
	}
	echo &#39;<br>&#39;;
	
 } 
 
  //产生全排列  递归参数传递一定要注意
 function quanpai($arr,$flag,$level,$num,$temp)
 {
	
	if($level>=$num) {output($temp,$num);return;}
		for($i=0;$i<$num;$i++)
		{
			if($flag[$i]==0)
			{
				$temp[$level]=$arr[$i];
				$flag[$i]=1;
				//if($level==2 && $i==3) {echo $temp[$i];exit;}
				quanpai($arr,$flag,$level+1,$num,$temp);
				$flag[$i]=0;
			}
		}
 }
 
 $arr=array(1,2,3,4);
 $len=count($arr);
 $i=0;
 $flag=array();
 $temp=array();
 while($i<$len){$flag[$i]=0;$i++;}
 
 quanpai($arr,$flag,0,$len,$temp);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHP生成树次の記事:PHP实现各种经典算法