插入排序(java)
基本思想:每步将一个待排序的记录,按其关键字值的大小插入到前面已经排序的文件中适当的位置上,直到全部插完为止。
package insertSort; public class InsertSort { public int[] sort(int[] arrays) { for (int i = 1; i < arrays.length; i++) { // int temp = arrays[i]; int j = i - 1; if(temp < arrays[j]){ while(temp < arrays[j] && j > 0){ arrays[j+1] = arrays[j]; j--; } } arrays[j] = temp; } return arrays; } }
没想到的是 插入排序的对100000个数排序竟然和归并排序差不多 只有 4300ms。
但是时间复杂度明明有这么高。