算法思想
每次从无序表中取出第一个元素,插入到有序表的合适位置
适合部分有序的数组或者小规模数组
时间复杂度n^2, 空间复杂度 1
Java实现
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] a = { 2, 4, 3, 5, 6, 3, 1 };
sort(a);
System.out.println(Arrays.toString(a));
}
public static void sort(int[] a) {
int temp;
for (int i = 1; i < a.length; i++) {
for (int j = i; j >= 1 && a[j] < a[j - 1]; j--) {
temp = a[j];
a[j] = a[j - 1];
a[j - 1] = temp;
}
}
}
}