欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php输出字符串全排列

程序员文章站 2022-04-19 16:50:47
...
php代码
function output($temp,$level)
 {
	for($i=0;$i<$level;$i++)
	{
		echo $temp[$i];
	}
	echo '<br>';
	
 } 
 
  //产生全排列  递归参数传递一定要注意
 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);