LINUX SB 快照站

世界上最差的排序——穷举排序

原帖: linux.sb/topic/10471 · 共 3 楼 · 标题快照 2026-08-12 10:41:46

楼主
发帖 2026-08-10 10:41:25 · 快照 2026-08-12 10:41:46

穷举所有顺序,找到第一个升序的
<?php
$count=8;

$array=range(0,$count-1,1);
shuffle($array);
$c=count($array);
$g=[[[],$array]];
function rmkey(&$array, $key) {
    unset($array[$key]);
    $temp = [];
    foreach ($array as $value) {
        $temp[] = $value;
    }
    $array = [];
    $array = $temp;
}
for($a=0;$a<$c;$a++){
    $temp=[];
    for($b=0;$b<count($g);$b++){
        $k=$g[$b];
        for($d=0;$d<count($k[1]);$d++){
            $rr=$k[0];
            $pp=$k[1];
            $rr[]=$k[1][$d];
            rmkey($pp,$d);
            $temp[]=[$rr,$pp];
        }
    }
    $g=$temp;
}
for($t=0;$t<count($g);$t++){
    $che=0;
    for($i=0;$i<$c-1;$i++){
        if($g[$t][0][$i]>$g[$t][0][$i+1]){
            $che=1;
        }
    }
    if($che==0){
        $array=$g[$t][0];
        break;
    }
}
print_r($array);

#1
发帖 2026-08-10 10:49:00 · 快照 2026-08-12 10:41:46

听说php是世界上最好的语言

#2
发帖 2026-08-10 10:49:26 · 快照 2026-08-12 10:41:46

@杀 #1 是的是的 确实是这样