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;
}
-
C語言main函數的參數
導語:main函數一般都是不帶參數的,那麼什麼情況會帶參數呢?讓我們瞭解一下吧!一般main函數都是不帶參數的。因此main後的括號都是空括號。實際上,main函數可以帶參數,這個參數可以認為是main函數的形式參數。C語言規定main函數的參數只能有兩個,習慣上這兩個參數寫...
-
2017年計算機C語言考試編程練習題及答案
江山代有才人出,各領風騷數百年。以下是小編為大家搜索整理的`2017年計算機C語言考試編程練習題及答案,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!1.從鍵盤上輸入8個浮點數,編程求出其和以及平均值。要求寫出求和以及平均值的函數。答:編...
-
C語言合併排序及實例代碼講解
歸併排序也稱合併排序,其算法思想是將待排序序列分為兩部分,依次對分得的兩個部分再次使用歸併排序,之後再對其進行合併。下面是小編為大家整理的C語言合併排序及實例代碼講解,歡迎參考~僅從算法思想上了解歸併排序會覺得很抽象,接下來就以對序列A[0],A[l]…,A[n-1]...
-
C語言的移位操作符使用方法
位移位運算符是將數據看成二進制數,對其進行向左或向右移動若干位的運算。位移位運算符分為左移和右移兩種,均為雙目運算符。第一運算對象是移位對象,第二個運算對象是所移的二進制位數。以下是小編為大家搜索整理的C語言的移位操作符使用方法,希望能給大家帶來幫...