<?php $arr = array(12, 9, 1, 4, 6, -3); $len = count($arr)-1; for($i=0; $i< $len; $i++){ // 升序的话,两两比较第一轮排序过后,最后一个一定是最大的了; // 所以第二轮时$j依然从0开始,但是结束的时候只需要管前$len-1的长度 for($j=0; $j < $len-$i; $j++){ if ($arr[$j] > $arr[$j+1]){ $temp = $arr[$j]; $arr[$j] = $arr[$j+1]; $arr[$j+1] = $temp; } } } echo ‘<pre>‘; print_r($arr); /** * Array ( [0] => -3 [1] => 1 [2] => 4 [3] => 6 [4] => 9 [5] => 12 ) */
时间: 2024-10-10 23:21:58