資料結構中幾種常見內部排序方法的比較

時間 2021-05-12 16:53:35

1樓:百度文庫精選

內容來自使用者:cngdzjl

資料結構各種排序方法的綜合比較

結論:  排序方法 平均時間  最壞時間     輔助儲存  簡單排序 o(n2)        o(n2)         o(1)  快速排序 o(nlogn)    o(n2)        o(logn)  堆排序 o(nlogn)       o(nlogn)     o(1)  歸併排序 o(nlogn)     o(nlogn)     o(n)  基數排序 o(d(n+rd))  o(d(n+rd))  o(rd)ps:直接插入排序、氣泡排序為簡單排序,希爾排序、堆排序、快速排序為不穩定排序

一、時間效能

按平均的時間效能來分,有三類排序方法:時間複雜度為o(nlogn)的方法有:快速排序、堆排序和歸併排序,其中以快速排序為最好;

時間複雜度為o(n2)的有:直接插入排序、起泡排序和簡單選擇排序,其中以直接插入為

最好,特別是對那些對關鍵字近似有序的記錄序列尤為如此;

時間複雜度為o(n)的排序方法只有,基數排序。

當待排記錄序列按關鍵字順序有序時,直接插入排序和起泡排序能達到o(n)的時間複雜度;而對於快速排序而言,這是最不好的情況,此時的時間效能蛻化為o(n2),因此是應該儘量避免的情況。簡單選擇排序、堆排序和歸併排序的時間效能不隨記錄序列中關鍵字的分佈而改變。二、空間效能

指的是排序過程中所需的輔助空間大小。

1.所有的簡單排序方法(包括:直接插入、起泡和簡單選擇3....

2樓:張幾何

這些全是內排,有什麼問題你再問我

資料結構中幾種常見的排序演算法之比較

3樓:匿名使用者

冒泡。 複雜度n平方。適用於陣列

插入排序。複雜度n平方。適用於連結串列

快排。複雜度nlog(n)。

希爾排序。這是一種插入排序,但是從統計角度看,比插入排序要快。

資料結構中排序方法有多少種,資料結構中常見的排序方式都有哪些?比如氣泡排序,快速排序等。每種排序具體是怎麼排的?

1 插入排序 直接插入排序和希爾排序 2 選擇排序 直接選擇排序和堆排序 3 交換排序 氣泡排序和快速排序 4 歸併排序 5 基數排序 直接插入排序 逐個將後一個數加到前面的排好的序中。在直接插入排序過程中,對其中一個記錄的插入排序稱為一次排序 直接插入排序是從第二個記錄開始進行的,因此,長度為n的...

資料結構中樹與二叉樹的區別在於,資料結構中,圖與樹,二叉樹比線性表有什麼優點

凱凱 二叉樹是指乙個樹的父節點最多只有兩個子節點構成的樹,樹是不限制子節點的個數的。二叉樹是樹的一種特例,是樹的子集。三個節點是無法表示出二叉樹和樹的區別的,需要三個以上的節點。二叉樹的表示如下圖。樹的表示如下圖。擴充套件資料 樹圖是一種資料結構,由n n 1 個有限節點組成具有層次關係的集合。它被...

資料結構中priorElem什麼意思

找前驅,實際使用的時候,需要找到某乙個元素前面是誰,例如,這個順序列表本來是排序儲存資料的,我就可以通過這個函式直接找到這個元素的前乙個元素。後面還有乙個找後驅,都是實際中的 1.一般寫c語言程式都要加這個標頭檔案,因為它包含scanf printf 等控制輸入和輸出的函式 包含的主要是和時間相關的...