数据结构与算法学习三:直接插入排序
一.排序方法
???? 基本思想:被排列的数组data[0...n]。初始时,data[0]自成1个有序区,无序区为data[1..n];从i=1起直至i=n为止,依次将data[i]插入当前的有序区data[0..i-1]中,生成含n个记录的有序区。
?
二.动画演示
???? http://student.zjzk.cn/course_ware/data_structure/web/flashhtml/insertsort.htm
?
三.Java代码
?????
public static int[] insertSort(int[] data) {int temp = 0;for (int i = 1; i < data.length; i++) {if (data[i - 1] > data[i]) {temp = data[i];int j = i - 1;for (; j >= 0 && data[j] > temp; j--) {data[j + 1] = data[j]; // 后移}data[j + 1] = temp;}}return data;}??四.时间复杂度和稳定性
?
?