冒泡排序
- 如果有N个元素,外层循环N-1次,第一次外层循环后,最大的数会排到最后,以此类推
- 内层循环的比较依次递减,例如总共五个数,第一次需要比较四次,才能确定最大的数,第二次需要比较三次...
PHP代码
<?php$a = [5,4,3,2,1,1,2,3,4,5];$length = count($a);for ($j = 0; $j < $length-1; $j++){ for ($i = 0; $i < $length - $j - 1; $i++){ $next = $i + 1; if ($a[$i] > $a[$next]){ $tmp = $a[$i]; $a[$i] = $a[$next]; $a[$next] = $tmp; } }}var_export($a);