适用于n较小,基本有序的情况下
时间复杂度为 O(n2),稳定排序,辅助空间为 O(1);
static void insertion_sort(int[] unsorted) {
for (int i = 1; i < unsorted.Length; i++) {
if (unsorted[i - 1] > unsorted[i]) {
int temp = unsorted[i];
int j = i;
while (j > 0 && unsorted[j - 1] > temp) {
unsorted[j] = unsorted[j - 1];
j--;
}
unsorted[j] = temp;
}
}
}