public function run() { //直接插入排序 $array = [5, 2, 7, 1, 3, 4, 6, 9, 8]; $this->directInsertSort($array); print_r($array); } private function directInsertSort(Array &$array) { $count = count($array); for ($i = 1; $i < $count; $i++) { //这是一个优化 if ($array[$i] > $array[$i - 1]) { continue; } for ($j = $i; $j > 0; $j--) { //从小到大排序 if ($array[$j] < $array[$j - 1]) { $tmp = $array[$j]; $array[$j] = $array[$j - 1]; $array[$j - 1] = $tmp; } } } }
直接插入排序(php代码实现)
最新推荐文章于 2021-03-10 17:21:33 发布