PHP输出两个一位数组合成一位数的所有组合
问题如题比如十位上面是0123个位上面是3456输出组合为03040506131415162324252633343536用PHP实现...
问题如题 比如十位上面是0 1 2 3 个位上面是3 4 5 6 输出组合为03 04 05 06 13 14 15 16 23 24 25 26 33 34 35 36 用PHP实现
展开
2个回答
展开全部
如:$newArr=arr('5340-5341','5342-5343','5344-5345');
$arr= array(Array(5340,5342,5344),Array(5341,5343,5345));
$temp = array_merge($arr[0],$arr[1]);
$str = paixu($temp);
$newStr = substr_replace($str,',',9,1);
$newStr1 = substr_replace($newStr,',',19,1);
$newArr = explode(',',$newStr1);
echo '<pre>';
print_r($newArr);
function paixu($temp){
$n=count($temp);
for ($i=0;$i<$n;$i++) {
for ($j=$n-2;$j>=$i;$j--){
if($temp[$j+1]<$temp[$j]){
$tmp = $temp[$j+1];
$temp[$j+1]=$temp[$j];
$temp[$j]=$tmp;
}
}
}
$temp=implode("-",$temp);
return $temp;
}
运行一下程序,结果你就知道了。
$arr= array(Array(5340,5342,5344),Array(5341,5343,5345));
$temp = array_merge($arr[0],$arr[1]);
$str = paixu($temp);
$newStr = substr_replace($str,',',9,1);
$newStr1 = substr_replace($newStr,',',19,1);
$newArr = explode(',',$newStr1);
echo '<pre>';
print_r($newArr);
function paixu($temp){
$n=count($temp);
for ($i=0;$i<$n;$i++) {
for ($j=$n-2;$j>=$i;$j--){
if($temp[$j+1]<$temp[$j]){
$tmp = $temp[$j+1];
$temp[$j+1]=$temp[$j];
$temp[$j]=$tmp;
}
}
}
$temp=implode("-",$temp);
return $temp;
}
运行一下程序,结果你就知道了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询