function bubble_sort($array){ $count = count($array); if ($count <= 0) return false; for($i=0; $i<$count; $i++){ for($j=$i; $j<$count-1; $j++){ if ($array[$i] > $array[$j]){ $tmp = $array[$i]; $array[$i] = $array[$j]; $array[$j] = $tmp; } } } return $array; }
原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换
这样一趟过去后,最大或最小的数字被交换到了最后一位
然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似
时间: 2024-11-15 09:47:35