62,614
社区成员
发帖
与我相关
我的任务
分享
package com.ibm.lan.test;
public class InsertionSort {
public static void main(String[] args) {
int[] array = {9, 3, 2, 4, 6, 8, 7};
insertionSort(array);
for(int i : array) {
System.out.println(i);
}
}
public static int[] insertionSort(int[] array) {
int key = 0;
for(int i = 1; i < array.length; i++) {
key = array[i];
int j = i - 1;
//这里是非递减排序,非递增排序只要把array[j] > key改为array[j] < key就行
while(j >= 0 && array[j] > key) {
array[j + 1] = array[j];
j = j -1;//一直往后移动,知道找到插入点
}
array[j + 1] = key;
}
return array;
}
}