一種插入排序實現

2021-08-16 05:28:31 字數 658 閱讀 3781

插入排序是一種較簡單的排序演算法。

思想:它是由 n - 1趟排序組成,對於p=1趟到p=n-1趟,插入排序保證從位置0到位置p-1上的元素均已排好序了。

時間複雜度:o(n*n),平均情況下時間複雜度也是o(n*n)

#includeint insert_sort(int a,int n)

} a[j] = temp;

} return 0;

}int main(void)

; int i;

printf("-------before---insert-sort----\n");

for(i=0;i<9;i++)

printf("%d ",s[i]);

printf("\n");

insert_sort(s,9);

printf("-------after----insert-sort----\n");

for(i=0;i<9;i++)

printf("%d ",s[i]);

printf("\n");

return 0;

}

程式執行結果如下:

coding A D 希爾排序(插入排序一種)

1 希爾排序 shell sort 這個排序方法又稱為縮小增量排序,是1959年d l shell提出來的。該方法的基本思想是 設待排序元素序列有n個元素,首先取乙個整數increment 小於n 作為間隔將全部元素分為increment個子序列,所有距離為increment的元素放在同乙個子串行中...

插入排序三種實現

直接插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子串行中的適當位置,直到全部記錄插入完成為止。設陣列為a 0 n 1 1.初始時,a 0 自成1個有序區,無序區為a 1.n 1 令i 1 2.將a i 併入當前的有序區a 0 i ...

一種情況下插入排序比希爾排序要快

我們都知道希爾排序是插入排序的優化。希爾排序會在進行插入排序前把數列分組,然後會根據需要把陣列內部的數字先進行順序排列,最終減少插入排序時移動元素的次數,達到優化的目的。但是我這邊簡化了部分插入排序的 結果在最後測試的時候,插入排序竟然會比希爾排序要快。這裡似乎是說希爾排序的 還能再繼續優化?或者還...