對n個記錄的檔案進行快速排序,所需要的輔助儲存空間大致為?求

時間 2022-07-28 00:22:45

1樓:

前面幾個答案都是答非所問。!!

快速排序的思想是不斷對待排序的元素按指定的元素進行劃分,然後對兩部分再進行劃分……。在劃分過程中,用到遞迴演算法,其遞迴演算法平均深度為約為 log2n,所以其空間複雜度為o(log2n)。

2樓:匿名使用者

快速排序在系統內部需要乙個棧來實現遞迴。若每次劃分比較均勻,則其遞迴樹的高度為o(logn)。最壞情況下,遞迴樹的高度為o(n),所需的棧空間為o(n)。

——資料結構(用c++語言描述)

北京郵電大學出版社

3樓:匿名使用者

堆排序:是一種樹型選擇排序,特點是,在排序過程中,把r[1..n]看成是乙個完全二叉樹的儲存結構,利用完全二叉樹雙親結點和孩子結點的內在關係,在當前無序區中選擇關鍵字最大(最小)的記錄。

(2)堆排序步驟:

1、從k-1層的最右非葉結點開始,使關鍵字值大(或小)的記錄逐步向二叉樹的上層移動,最大(或小)關鍵字記錄成為樹的根結點,使其成為堆。

2、逐步輸出根結點,令r[1]=r[i](i=n,,n-1,...,2),在將剩餘結點調整成堆。直到輸出所有結點。我們稱這個自堆頂到葉子的調整過程為「篩選」。

(3)要解決的兩個問題:

1、如何由乙個無序序列建成乙個堆;

2、輸出乙個根結點後,如何將剩餘元素調整成乙個堆。

將乙個無序序列建成乙個堆是乙個反覆「篩選」的過程。若將此序列看成是乙個完全二叉樹,則最後乙個非終端結點是第floor(n/2)個元素,由此「篩選」只需從第floor(n/2)個元素開始。

堆排序中需乙個記錄大小的輔助空間,每個待排的記錄僅占有乙個儲存空間。堆排序方法當記錄較少時,不值得提倡。當n很大時,效率高。堆排序是非穩定的。

堆排序的演算法和篩選的演算法如第二節所示。為使排序結果是非遞減有序排列,我們在排序演算法中先建乙個「大頂堆」,即先選得乙個關鍵字為最大的記錄並與序列中最後乙個記錄交換,然後對序列中前n-1個記錄進行篩選,重新將它調整為乙個「大頂堆」,然後將選得的乙個關鍵字為最大的記錄(也就是第乙個元素)與當前最後乙個記錄交換(全域性看是第n-1個),如此往復,直到排序結束。由到,篩選應按關鍵字較大的孩子結點向下進行。

在插入排序、氣泡排序、快速排序、歸併排序等排序演算法中,占用輔助空間最多的是哪個?

4樓:

在插入排序、氣泡排序、快速排序、歸併排序等排序演算法中,占用輔助空間最多的是歸併排序。

對n個記錄的檔案進行快速排序,所需要的輔助儲存空間大致為o(1og2n)。

1、所有的簡單排序方法(包括:直接插入、起泡和簡單選擇)和堆排序的空間複雜度為o(1);

2、快速排序為o(logn),為棧所需的輔助空間;

3、歸併排序所需輔助空間最多,其空間複雜度為o(n);

4、鏈式基數排序需附設佇列首尾指標,則空間複雜度為o(rd)。

擴充套件資料

計算機排序演算法的特點

1、有窮性

乙個演算法應包含有限的操作步驟,而不能是無限的。有窮性值在合理範圍之內,如果讓計算機執行乙個歷時1000年才結束的演算法,這雖然是有窮的,但超過了合理的限度,人們不把他視為有效演算法。

2、確定性

演算法中的每乙個步驟都應當是確定的,而不應當是含糊的,摩稜兩可的。演算法中的每乙個步驟應當不致被解釋成不同含義的,而應是十分明確的。也就是說,演算法的含義應當是唯一的,而不應當產生歧義性。

3、有零個或多個輸入

所謂輸入,即在執行演算法是需要從外界取得必要的資訊。

4、有乙個或多個輸出

演算法的目的是為了求解,沒有輸出的演算法是沒有意義的。

5、有效性

演算法中的每乙個步驟都應當能有效的執行,並得到確定的結果。

5樓:錦瑟

是《資料結構》課上的吧?。。。呵呵。。。

直接插入排序是將乙個記錄插入已排序好的序表中,從而得到乙個新的、記錄增1的有序序列。它需要設定乙個哨兵,通常就是用r[0],所以它需要的輔助空間為1。

氣泡排序主要是利用相鄰大小比較之後的交換實現的,在交換的時候需要乙個輔助空間,所以它需要的輔助空間也為1。事實上,氣泡排序是快速排序的一種特例。

快速排序中除了交換時需要乙個資料的輔助空間。

歸併排序歸併排序主要是分治的思想,即把兩個或兩個以上的有序表合成乙個新的有序表,實現歸併排序需要和待排記錄等數量的輔助空間。

6樓:匿名使用者

必然是歸併,歸併並不是就地排序,而其他三個都是。

也就是說,其他三個都將占用常數個輔助空間,而歸併在執行時會占用o(n)的空間進行輔助排序,而其他都是o(1)。

7樓:匿名使用者

插入排序、氣泡排序都是o(n^2)的

快速排序、歸併排序是 o(n*log2(n))的一般情況下,快速的排序方式都是以犧牲空間為代價的....

而相比而言,歸併排序使用的輔助空間最多,因為它要對多個鍊錶排序,還要合併,都要附屬空間,但快速排序只要乙個乙個鍊錶....

資料結構問題!求個詳細點的答案。。。萬分感激。。。

8樓:匿名使用者

第九題應該是這樣的,雜湊位址為1的元素是55,64,46,10這四個

所以答案應選d

9樓:匿名使用者

每趟排序需要乙個輔助空間,輔助空間和趟數有關,最好log2 n ,最差n

10樓:李本質

d 55 64 46 10

對n個頂點的無向圖G,採用鄰接矩陣表示,判別下列有關問題1 圖中有多少條邊2 任意兩個

c第i列表示終點為頂點i的那些邊,非0表示這條邊存在入度表示終點為這點的邊數之和 1 矩陣不一定是對稱的 2 第i行中1的個數為頂點i的出度 3 第i列中1的個數為頂點i的入度 4 矩陣中1的個數為圖中弧的數目 5 很容易判斷頂點i和頂點j 是否有弧相連 看矩陣中i行j列值是否為1 從無向圖的鄰接矩...

穿越寵文(男強女強,不要一女N男,要一對一的,最好嬰穿,絕對不要虐的,女主要冷血的,要殺手穿越,)

好像是魔鬼終結者幾來著!您太激動了,忘了留下郵箱。我是孤獨 來自我愛電子書團隊 求完結的穿越 女強,一對一,寵文,不要虐。雲狂,妾本驚華,梟女 穿越寵文,男女主角強大,聰明,腹黑 一對一 彼此信任 不要虐的 最好是一見鐘情的 樓主你好。你要的資源我有 請留下郵箱或是追問我。我會及時發給你 水漾流蘇 ...