插入排序算法

算法:

对于少量元素的排序,它是一个有效的算法。

假设有一个数组:A[1 …. n]

实现:


For j = 2 to A.length
   key = A[j]
   i=j-1
   While ( i>0 and A[i] > key)
A[i+1] = A[i]
i=i-1
   A[i + 1] = key

java代码实现:

public int[] insertSort(int[] a){
		
		for(int i=0; i < a.length; i ++) {
			
			int key = a[i];
			int j = i - 1;
			
			while(j >= 0 && a[j] > key) {
				a[j+1] = a[j];
				j = j-1;
			}
			a[j+1] = key;
		}
		
		return a;
}

点赞