插入排序(直接插入排序)
Posted super-lulu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入排序(直接插入排序)相关的知识,希望对你有一定的参考价值。
思路分析:
在要排序的一组数中,假设前面的数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
1 //插入排序 2 function straightInsertionSort($arr) 3 4 $len = count($arr); 5 for ($i = 1; $i < $len; $i++) 6 $tmp = $arr[$i]; 7 for ($j = $i - 1; $j >= 0; $j--) 8 if ($arr[$j] > $tmp) 9 $arr[$j + 1] = $arr[$j]; 10 $arr[$j] = $tmp; 11 else 12 break; 13 14 15 16 print_r($arr); 17
$arr = [3, 2, 8, 6, 7, 5, 9, 4, 1];
straightInsertionSort($arr);
以上是关于插入排序(直接插入排序)的主要内容,如果未能解决你的问题,请参考以下文章
直接插入排序 ,折半插入排序 ,简单选择排序, 希尔排序 ,冒泡排序 ,快速排序 ,堆排序 ,归并排序的图示以及代码,十分清楚