資料結構(2)

2022-05-07 10:09:09 字數 498 閱讀 4651

堆(heap)通常是乙個可以被看做一棵樹的陣列物件。

堆總是滿足下列性質:

堆支援以下的基本操作:

左偏樹左偏樹(leftist tree)是一種可並堆的實現。

左偏樹是一棵二叉樹,它的節點除了和二叉樹的節點一樣具有左右子樹指標( left, right)外,還有兩個屬性,鍵值和距離(dist)。

它不但要滿足堆性質,也同時要滿足左偏性質

即任意乙個點的左子dist大於等於右子dist

因為它的性質針對每乙個節點 所以左偏樹的任意乙個子樹也是左偏樹

1

int merge(int x, int

y)

合併

1

void erase(int

x)

刪除堆頂

斐波那契堆(然鵝並不會

資料結構 2

2016 02 06 17 38 指標和陣列 指標和一維陣列 陣列名一維陣列名是個指標常量,它存放的是一維陣列第乙個元素的位址,它的值不能被改變 一維陣列名指向的是陣列的第乙個元素 下標和指標的關係 a i a i 假設指標變數的名字為p 則p i的值是p i p所指向的變數所佔的位元組數 指標變數...

資料結構2

定義 只允許在一端插入和刪除的線性表 允許插入和刪除的一端稱為棧頂 top 另一端稱為棧底 bottom 特點後進先出 lifo 棧的棧的主要操作 棧的主要操作主要操作 棧的主要操作 adtstack 棧的陣列表示 順序棧 define stacksize 100typedef char stack...

資料結構 2

class queue object 佇列 雙端佇列 def init self 私有化,封裝 self.queue def enqueue self item 從尾部往佇列中新增乙個元素 def enqueue start self item 從頭部新增元素 雙 self.queue.insert...