思路分析:
在要排序的数组中,从前往后进行相邻数的比较,让较大的数往下沉,较小的数往上冒;即,相邻两个元素进行比较,当它们与排序的顺序相反时就互换位置;
1 //冒泡排序 2 function bubbleSort($arr){ 3 $len = count($arr); 4 for ($i = 1; $i < $len; $i++) { 5 for ($j = 0; $j < $len - $i; $j++) { 6 if ($arr[$j] > $arr[$j + 1]) { 7 $tmp = $arr[$j]; 8 $arr[$j] = $arr[$j + 1]; 9 $arr[$j + 1] = $tmp; 10 } 11 } 12 } 13 print_r($arr); 14 }
$arr = [3, 2, 8, 6, 7, 5, 9, 4, 1];
bubbleSort($arr);