常用排序方法(一)

2021-09-30 11:01:36 字數 703 閱讀 5437

排序,是將一組物件按照規定的次序重新排列的過程,排序往往是為檢索服務的。排序可分為兩大類:內部排序和外部排序,我們這裡只討論內部排序。內部排序的方法主要有以下四種:插入排序、交換排序、選擇排序和歸併排序。

一、插入排序

插入排序又分為直接插入排序、折半插入排序、表插入排序和希爾排序。不過我們最常用的就是現在即將介紹的直接插入排序。

直接插入排序:是一種比較簡單的排序方法,它的基本思想是依次將每個記錄插入到乙個已排好序的有序表中,從而得到乙個新的、記錄數增加

1的有序表。

直接插入排序的演算法描述如下:

voidstraightinsertsort(list r, int n)

//對順序表r進行直接插入排序

}if (endsort==0) break;

}}

在演算法實現時,定義乙個整型變數

endsort

,在每一次排序之前,先將他設定為

0,若在一趟起泡中交換了記錄,則將他置位

1。當一次迴圈結束時,我們再檢查

endsort

,ruoendsort

的值為0

便終止演算法。

該演算法的時間複雜度為o(

n2),是一種穩定的排序方法。

常用排序方法(一)

氣泡排序 演算法原理 每次前乙個元素與後乙個元素比較,若前者大則交換。include void change int pdata,int count change data,6 插入排序 排序原理是抽出牌,在前面的牌中尋找相應的位置插入,然後繼續下一張 include stdio.h void in...

常用排序方法(C

public class sortalgorithm 插入排序 param numlist private void insertsort intnumlist numlist in temp 選擇排序 private void selectionsort intnumlist system.out...

常用排序方法介紹

長沙蒲公英網路 2016 11 17 17 22 長沙 開發時起到事半工倍的效果,今天筆者介紹幾個常用的排序方法。冒擇路希快歸堆 口訣 氣泡排序,選擇排序,插入排序,希爾排序,快速排序,歸併排序,堆排序 1 直接插入排序 說明 逐個將後乙個數加到前面的排好的序中。在直接插入排序過程中,對其中乙個記錄...