當前位置:才華齋>計算機>C語言>

C++ 排序插入排序詳解

C語言 閱讀(2.1W)

插入排序的'基本思想是每次將一個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。下面是小編分享的C++ 排序插入排序詳解,一起來看一下吧。

C++ 排序插入排序詳解

常見的插入排序有插入排序(Insertion Sort),希爾排序(Shell Sort),二叉查詢樹排序(Tree Sort),圖書館排序(Library Sort),Patience排序(Patience Sort)。

  簡單例項

#include <iostream>

using namespace std;

void InsertSort( int k[], int n )

{

int i, j,temp;

for( i=1; i < n;i++ )

{

if( k[i] < k[i-1] )

{

temp = k[i];

for( j=i-1; k[j] > temp;j-- ) //找位置並且向後推移

{

k[j+1] = k[j];

}

k[j+1] = temp;

}

}

}

int main()

{

int i ,a[10] = {5,2,6,0,3,9,1,7,4,8};

InsertSort(a,10);

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

{

cout << a[i];

}

cout << endl;

return 0;

}