iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
自我挑戰組

資料結構 系列

每天一個主題,練習各式資料結構的定義、操作方法、及適用範圍。

鐵人鍊成 | 共 30 篇文章 | 2 人訂閱 訂閱系列文 RSS系列文
DAY 11

【Data Structure】Day11: 二元樹(Binary Tree)

今天要來介紹一個非常重要的結構:Binary Tree。昨天說到,他可以最大化減少 Linking space 的浪費問題 何謂二元樹? 二元樹的定義為:可為空...

2024-09-16 ‧ 由 tsaiyichen 分享
DAY 12

【Data Structure】Day12: 二元樹追蹤(Traversal)

昨天我們介紹了二元樹的定義和它的種類,今天要來介紹如何走訪所有二元樹的節點 假設一棵二元樹之 root 為 D, 左子樹為 L, 右子樹為 R,則: 前序追蹤...

2024-09-17 ‧ 由 tsaiyichen 分享
DAY 13

【Data Structure】Day13: 二元搜尋樹(Binary Search Tree)

何謂二元搜尋樹(Binary Search Tree) 二元搜尋樹(Binary Search Tree, BST)是一顆 Binary Tree。可為空樹,若...

2024-09-18 ‧ 由 tsaiyichen 分享
DAY 14

【Data Structure】Day14: 高度平衡的二元搜尋樹

昨天說到,如果二元搜尋樹是 skewed tree 的話,那麼 insert / delete / search 有可能就會因此變成 O(n) 時間。因此,若能...

2024-09-19 ‧ 由 tsaiyichen 分享
DAY 15

【Data Structure】Day15 堆積(Heap)

今天要來介紹新的結構,堆積(Heap) 何謂 Heap:以 Max-Heap 為例 Heap 是一棵 Binary Tree,可為空樹,若非空,則: 一定是...

2024-09-20 ‧ 由 tsaiyichen 分享
DAY 16

【Data Structure】Day16: Heap operation

今天要來介紹 heap 的 operation。一個 max-heap class 需要有的操作有: insert x delete max heapify(...

2024-09-21 ‧ 由 tsaiyichen 分享
DAY 17

【Data Structure】Day17: 雙邊優先權佇列(Double Ended Priority Queue)

我們介紹完了 priority Queue,接著要介紹的是 "double-ended" priority Queue 除了有新增元素之外,...

2024-09-22 ‧ 由 tsaiyichen 分享
DAY 18

【Data Structure】Day18: 外部搜尋(External search)

今天要進入新的大主題:外部搜尋 何謂外部搜尋(External search) 指的是:資料量太大,沒辦法一次將所有資料 load 進 memory 進行搜尋,...

2024-09-23 ‧ 由 tsaiyichen 分享
DAY 19

【Data Structure】Day19: B-Tree of order m

昨天介紹了 m-way search tree,也提到了他的大問題:有可能斜曲的問題。今天我們要把它平衡化,也就是 B-tree B-tree of order...

2024-09-24 ‧ 由 tsaiyichen 分享
DAY 20

【Data Structure】Day20: B-tree 的操作(operation)

今天要來介紹 B-tree key 的新增及刪除操作 insert key X into B-tree of order m 步驟如下: 先 search X...

2024-09-25 ‧ 由 tsaiyichen 分享