冒泡排序
排序算法之冒泡排序
1.属于内部排序,是指将数据加载到内存进行排序,(属于交换排序法)
function 冒泡排序($arr) { $flag = false;//标识变量,标识数组是否已经排序好 //数组假如有5个元素,排好4个的话,那么最后一个就自然排好了,下标从0开始,$i表示已经排好元素的个数... for ($i = 0; $i < count($arr) - 1; $i++) { //$i表示已经排好元素的个数,已经排好了就不需要再进行排序了, for ($j = 0; $j < count($arr) - 1 - $i; $j++) { //交换 if ($arr[$j] > $arr[$j + 1]) { //三角交换 $temp = $arr[$j]; $arr[$j] = $arr[$j + 1]; $arr[$j + 1] = $temp; $flag = true;//表示进行了交换 } } if (!$flag) { break;//已经是有序的了,不需要进行排序了 } $flag = false; } return $arr; }
越努力越幸运