直接插入排序的c語言實現

2021-07-11 14:01:14 字數 379 閱讀 9194

直接插入排序即是在要排序的陣列中,假設前n-1(n>=2)個數已經是排好序的,現在要把第n個數插入到前n個已經排好序的陣列中,使得這n個數也變成有序的,如此反覆迴圈,使得要排序的陣列中的最後乙個元素也排好序,

我們可以先假設第乙個數是排好序的,然後第二個數和第乙個數進行比較,如果第二個數比第乙個數大,那麼說明前兩個數排好序,無需做調整,如果第二個數比第乙個數小,那麼就把第乙個數向後移,將第二個數放在第乙個數的位置上,抽象出來就是用a[i]和a[i-1]進行比較,如果a[i]>a[i-1],那麼就說明前i個數是已經排好序的,如果a[i]

具體**實現如下:

//直接插入排序

#includevoid insertsort(int a,int n)

}for(i=0;i

直接插入排序 c語言 實現

int zixiesort int array,int n if flag array k tem flag 0 return array int sort int array,int n 找到了標記位並空餘出來 array j tmp 插入tmp return array 主函式 int main...

直接插入排序 C語言

插入排序是最簡單的一種排序方法。它的基本操作就是將乙個記錄插入到已排好序的有序表中,從而得到乙個新的 記錄數增1的有序表。直接插入排序時,我們將第二個陣列元素作為插入數,第乙個數作為有序陣列。逐個比較兩者大小,最後將數插入到合適位置。實現 插入排序 void inse int data int t ...

C語言直接插入排序

直接插入排序 穩定演算法 的基本思想 從第乙個數開始,認定陣列的前i個數有序,依次遍歷陣列,把後面的資料插入到合適的位置,使陣列繼續保持有序。include void swap int a,int b 直接插入排序 公升序 void insertsort up int arr,int length ...