插入排序 Insertion sort

适用于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;
                }
            }
        }

你可能感兴趣的:(插入排序 Insertion sort)