文章 - 筆記長也NotesHazuya

樹-二元搜尋樹之介紹與範例

二元搜尋樹的特性 1.左子樹的資料(鍵值)均小於樹根的資料 2.右子樹的資料(鍵值)均大於樹根的資料 3.左子樹與右子樹也是二元搜尋樹 二元搜尋樹的加入與搜尋 只要依照左子樹小於樹根,右子樹大於樹根的規則尋找合適的插入點即可 例如我們將87加入,將會加在65的右邊......

樹—二元樹的介紹與走訪

二元樹 二元樹與一般的樹不同的地方 1.二元樹有左右之分,一般樹則沒有 2.二元樹每一節點的分支度至多為2,一般樹則沒有此限制   而二元樹的左子樹和右子樹也可以是空集合,如下圖所示,A與B為兩棵不同的樹,A樹右子樹為空,B樹左子樹為空。

樹—樹狀結構的基本名詞與介紹

樹狀結構 樹是由節點(node)與邊(edge)所組成的集合。包含一個特殊的節點樹根(root),其餘節點分成n個集合,每個集合都是一棵樹。  

遞迴—河內塔

河內塔 一般河內塔有三個柱子,與N個碟盤,要將N個碟盤由A柱移動至C柱,其規則如下: 1.一次只能搬動一個盤子 2.大盤子不可以疊在小盤子上面 (小盤子必須在大盤子上) 演算法 假設要移動n個碟盤: a.當 n=1時,直接將碟盤由A移動至C b.否則: 1.搬移n-......

串列之應用—多項式相加

多項式相加 多項式相加可利用串列完成,其資料之表示方法如下: COEF

串列之應用—以串列表示堆疊與佇列

堆疊與佇列 先前我們在介紹堆疊與佇列,是以陣列實作。本篇文章將以串列的方式來實作堆疊與佇列,關於堆疊與佇列之相關介紹請看「堆疊與佇列圖解概念」一文。 以串列表示堆疊 堆疊之加入 堆疊為一個出入口,因此我們可以看做將資料加入串列的前端。 1.ptr.next=top......

鏈結串列—雙向環狀鍊結串列之介紹與範例

環狀雙向鏈結串列 雙向之鏈結串列有別於單向鏈結串列,他不僅指向後一個節點,也會指向前一個節點。 而雙向鏈結串列通常具有三個欄位,左鏈結(llink)、資料(data)、右鏈結(rlink)。請參考下圖:

鏈結串列—兩個環狀鏈結串列之連結

環狀鏈結串列 關於環狀鏈結串列之詳細介紹,請參考上一篇「串列—環狀鍊結串列之介紹與範例」。 兩個環狀串列之連結 今假設有A與B兩個串列 1.尋找A串列之末端 Atail=Ahead.next; while ( Atail.next!=Ahead)       Atail=Atail.next;

鏈結串列—環狀鏈結串列之介紹與範例

鏈結串列 上一篇文章我們已經基本的介紹過了鏈結串列,請參考上一篇文章「串列—單向鏈結串列之介紹與範例」。 環狀鏈結串列 之前在佇列時有學過"環狀佇列",同理環狀串列也是將資料的末端與資料的前端連在一起。(在環狀佇列的示意圖很像圓餅圖,但意思都是循環)

鏈結串列—單向鏈結串列之介紹與範例

鏈結串列 鏈結串列是利用指標將資料連結起來的資料結構,需要利用額外的指標空間將資料串起來。 節點:有儲存的資料與指標兩個空間 串列:負責串接各節點