1.冒泡排序
function sort($array) {
$length=count($array);
for ($i=$length;$i>0;$i--){
$ swape=true;
for ($j=0;$j<$i-1;$j++){
if ($array[$j]>$array[$j+1]){
$ temp=$array[$j];
$array[$j]=$array[$j+1];
$array[$j+1]=$temp;
$swape=false;
}
}
if ($swape)break;
}
return $array;
}
2.气泡排序
function sort($input)
{
if(!isset ($input))
{
return [];
}
do
{
$swapped = false;
for($i = 0, $count = 크기 of($input) - 1; $i < $count; $i++)
{
if($input[$i + 1] < $input[$i])
{
목록($input[$i + 1], 정의 ($교환됨);
$input 반환;
}
$array = [51158,1856,8459,67957,59748,58213,90876,39621,66570,64204,79935,27892,47615,94706,34 201,74474,63968,4337 ,43688,42685,31577,5239,25385,56301,94083,23232,67025,44044,74813,34671,90235,65764,49709,12440,21165,20620,38265,12973,2 5236,93144,13720,4204,77026 ,42348,19756,97222,78828,73437,48208,69858,19713,29411,49809,66174,52526277,7515,7873,8350,28229,24105,76818,86897,18456, 29373,7853,24932,93070,4696 ,63015,9358,28302,3938,11754,33679,18492,91503,63395,12029,23954,27230,58336,16544,23606,61349,37348,78629,96145,57954,32 392,76201,54616,59992,5676 ,97799,47910,98758,75043,72849,6466,68831,2246,69091,22296,6506,93729,86968,39583,46186,96782,19074,46574,46704,99211,552 95,33963,77977,86805,72686 ];
$array = sort($array);
echo implode(',', $array);
3.计数排序
function sort($array, $min, $max)
{
$count = array();
for($i = $min; $i <= $max; $i++)
{
$count[$i] = 0;
}
foreach($array as $number)
{
$count[$number]++;
}
$ z = 0;
for($i = $min; $i <= $max; $i++) {
while( $count[$i]-- > 0 ) {
$array[$z++ ] = $i;
}
}
return $array;
}
4.插入排序
function sort($array){
for ($i=1;$i $currentVal=$array[$i]; for ($j=$i-1;$j>=0&&$array[$j]>$currentVal;$j- -) { $ array [$ j+1] = $ array [$ j]; } $ array [$ j+1] = $ currentVal; } retray $ array; } 5.快速排序 함수 정렬($input) { if(!isset($input)) { return []; } $lt = []; $gt = []; if(sizeof($input) < 2) { return $input; } $key = key($input); $shift = 배열_시프트 ($input); foreach($input as $value) { $value <= $shift ? $lt[] = $value : $gt[] = $value; } return array_merge(quickSort($lt), [$key => $shift], QuickSort($gt)); } $배열 = [51158,1856,8459,67957,59748,58213,90876,39621,66570,64204,79935,27892,47615,94706,34201,74474,63968,4337,43688, 42685,31577,5239,25385 ,56301,94083,23232,67025,44044,74813,34671,90235,65764,49709,12440,21165,20620,38265,12973,25236,93144,13720,4204,77026,4 2348,19756,97222,78828,73437 ,48208,69858,19713,29411,49809,3015,9358,28302,3938,11754,33679,18492,91503,63395,12029,23954,27230,58336,16544,23606,613 49,37348,78629,96145,57954 ,32392,76201,54616,59992,5676,97799,47910,98758,75043,72849,6466,68831,2246,69091,22296,6506,93729,86968,39583,46186,9678 2,19074,46574,46704,99211 ,55295,33963,77977,86805,72686]; $array = QuickSort($array); echo implode(',', $array); 6.选择排序 function sort($array) { $length=count($array); for ($i=0;$i<$length;$i++){ $lowest=$i; for ($j=$i+1 ;$j if ($array[$j] < $array[$lowest]){ $lowest=$j; } } if ($ i !==$최저){ $temp=$array[$i]; $array[$i]=$array[$lowest]; $array[$lowest]=$temp; } } return $array; } ——————————————— 版权声ming:本文为CSDN博「m0_37540251」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上원문출판链接及本声ming。 원문链接:https://blog.csdn.net/m0_37540251/article/details/125201836 위 내용은 인터뷰 필수 알고리즘, PHP 알고리즘 정렬 백과사전의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!