核心思想:將乙個記錄直接插入到已經排好序的有序表中,從而得到乙個新的、記錄數增加1的有序表。
**如下:
#include
using namespace std;
void insertsort(int a,int n);
int main() ;
insertsort(a,10);
for(int i=0;i<10;++i)
cout << a[i];
cout << endl;
system("pause");
return 0;
}void insertsort(int a,int n)
a[j+1]=temp;
}
}}
當找到乙個值比前面那個值小,則把小的值放入temp中,然後將前面的值與temp比較,如果比temp大,則該值向後移。如果比temp小,則放在該值的後面
c 實現直接插入排序
include includeusing namespace std define list init size 100 define listincrement 10 define elemtype int typedef structsqlist 建順序表 void initlist sq sq...
C 實現直接插入排序
直接插入排序在生活中最好的體現就是玩撲克牌,我們理牌的方式是把3和4移動到5的左側,再拿到一張2,把2移到最左側,拿到一張10,放最後邊,再拿到一張7,插入5與10中間。這裡我們的理牌方法就是直接插入排序。話不多說,直接上 這裡一步步給出不同的寫法 include include using nam...
直接插入排序 C 實現
原理 插入排序的基本操作是 有序插入 也就是將元素逐一插到有序序列中,保持序列有序,從而使有序序列的長度不斷增加。對陣列a n 排序時,起初a 0 被認為是長度為1的有序子串行。然後,按照有序插入法,i從1到n 1迴圈地將a i 插入到有序序列中。在插入a i 前,陣列a的前半段 a 0 至a i ...