學習筆記 資料結構 堆結構

2021-06-07 18:20:02 字數 416 閱讀 8050

堆結構: 實質是陣列

特點:以陣列的形式去儲存完全二叉樹

原理:以前序遍歷完全二叉樹,得出結點的前序序列,以陣列的形式儲存該序列。

查詢父,子結點通過陣列下標id間的轉換關係實現。

優點:節省儲存空間,查詢效率高

缺點:1·只能表示完全二叉樹(更廣泛的可以說是完全n叉樹)

2·對樹的插入,刪除操作執行效率低

3·事先必須知道樹節點個數,以確定陣列大小

聯想:其優缺點都是由於其實現原理決定的,以特定的順序遍歷樹節點,得出相應的序列,使得父子結點下標擁有固定的轉換關係,從而省掉了指向父結點和子節點的指標變數,節省空間,提高查詢效率。但是一但遍歷的序列發生改變,位置發生改變的資料項就要移動到相應的位置,所以對於影響序列的插入,刪除操作執行效率很差。由於陣列的空間是固定的,對於插入操作的支援也是很有限的。

演算法筆記 資料結構 堆

堆是一棵完全二叉樹,樹中每個結點的值都不小於 或者不大於 其左右孩子結點的值 對於給定初始序列,如何建堆?給定陣列 85,55,82,57,68,92,99,98,66,56 建堆過程如下 利用陣列來儲存完全二叉樹,這樣結點就按層序儲存與陣列中,其中第乙個結點將儲存於陣列的1號位,並且陣列i號位表示...

學習筆記 資料結構

一 常用的資料結構 1 線性資料結構 元素之間一般存在元素之間存在一對一關係,是最常用的一類資料結構,典型的有 陣列 棧 佇列和線性表 2 樹形結構 結點間具有層次關係,每一層的乙個結點能且只能和上一層的乙個結點相關,但同時可以和下一層的多個結點相關,稱為 一對多 關係,常見型別有 樹 堆 3 圖形...

筆記 資料結構

解釋經典例題 計算給定多項式在給定點x處的值。f x a0 a1 x a n 1 x n 1 a n x n 方法一 double num int n,double array,double x 改進方法 double num int n,double array,double x clock 捕捉...