樹狀結構

樹的基本構造

A

B

C

D

E

F

這是一個樹狀結構

樹的基本構造

A

B

C

D

E

F

這是一個樹狀結構

高度(height)

3

Level 1

Level 2

Level 3

階層(level)

樹的基本構造

A

B

C

D

E

F

這是一個樹狀結構

根節點

X parent

子樹

樹的基本構造

A

B

C

D

E

F

這是一個樹狀結構

A的子節點

兄弟節點

BC的父節點

樹的基本構造

A

B

C

D

E

F

這是一個樹狀結構

X child

葉節點

B的子節點

兄弟節點

C的子節點

無兄弟節點

DE的父節點

F的父節點

樹的名詞介紹

A

B

C

D

E

F

  • 節點分支度(degree):節點的child數
  • 樹分支度:節點分支度最大值
  • K元樹(k-ary tree):所有節點的child都不超過K個

因為太棒了請容許我直接貼上

前序

因為太棒了請容許我直接貼上

中序

因為太棒了請容許我直接貼上

後序

堆疊與佇列

堆疊(stack)

  • first-in-last-out(FILO)

A

push(A)

堆疊(stack)

  • first-in-last-out(FILO)

A

top()

B

push(B)

堆疊(stack)

  • first-in-last-out(FILO)

A

top()

B

pop()

堆疊(stack)

  • first-in-last-out(FILO)

A

top()

B

pop()

輸出: B

堆疊(stack)

  • first-in-last-out(FILO)

A

pop()

輸出: BA

佇列(queue)

  • first-in-first-out(FIFO)

A

enqueue(A)

佇列(queue)

  • first-in-first-out(FIFO)

A

enqueue(B)

B

front()

rear()

佇列(queue)

  • first-in-first-out(FIFO)

A

dequeue()

B

front()

rear()

佇列(queue)

  • first-in-first-out(FIFO)

dequeue()

B

front()

rear()

輸出: A

A

佇列(queue)

  • first-in-first-out(FIFO)

dequeue()

B

輸出: AB

排序與搜尋

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

選擇排序法

幫每一個位置

選擇該放的數字

FINISH

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

泡沫排序法

兩兩比較後出來的結果

FINISH

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

插入排序法

幫每個數字插入正確的位子

FINISH

Palette

By problemsolvemaster_kaitochiang