11國立交通大學 運科管系 計算機概論
樹狀結構 樹狀結構 TreesTrees
22國立交通大學 運科管系 計算機概論
樹狀結構之術語樹狀結構之術語 (Terminology)(Terminology)
A
CB D
E F G H I J K
根 (root)
樹 枝 (branch)
節 點 (node)
第一
層
(L ev e l 1 )
第二
層
(L ev e l 2 )
第三
層
(L ev e l 3 )
樹 葉 (leaf)
33國立交通大學 運科管系 計算機概論
樹狀結構之定義樹狀結構之定義 (Definition)(Definition)
A A treetree consists of a node, calle consists of a node, called its root, and zero or more subd its root, and zero or more subtrees, each of which is itself a trees, each of which is itself a ttreeree..
44國立交通大學 運科管系 計算機概論
樹狀結構之處置程序 樹狀結構之處置程序 ((TraversalTraversal))
前序處置程序前序處置程序 (Preorder traversal)(Preorder traversal) 後序處置程序後序處置程序 (Postorder traversal)(Postorder traversal) 中序處置程序中序處置程序 (Inorder traversal)(Inorder traversal)
55國立交通大學 運科管系 計算機概論
前序處置程序前序處置程序 (Preorder traversal)(Preorder traversal)
先處置樹根由左而右以前序處置程序前序處置程序處置樹根之下 的各個子樹
A
CB D
E F G H I J K
66國立交通大學 運科管系 計算機概論
後序處置程序後序處置程序 (Postorder traversal)(Postorder traversal)由左而右以後序處置程序後序處置程序處置樹根之下 的各個子樹處置樹根
A
CB D
E F G H I J K
77國立交通大學 運科管系 計算機概論
中序處置程序中序處置程序 (Ineorder traversal)(Ineorder traversal) ── 只適用於二元樹只適用於二元樹 (Binary tree)(Binary tree)以中序處置程序中序處置程序先處置樹根之下的左子樹再處置樹根以中序處置程序中序處置程序處置樹根之下的右子樹
A
CB
D
E F G
88國立交通大學 運科管系 計算機概論
二元樹二元樹 (Binary tree)(Binary tree) 之定義之定義
A binary tree is a tree in which A binary tree is a tree in which each node has at most two each node has at most two children.children.
A
CB
D
E F G
99國立交通大學 運科管系 計算機概論
樹狀結構之線性表示法樹狀結構之線性表示法((Linear representationsLinear representations))
括號表示法括號表示法 (parenthesis notation):(parenthesis notation):
A
CB D
E F G H I J K
A ( B ( E F ) C ( G H I ) D ( J K ))A ( B ( E F ) C ( G H I ) D ( J K ))
1010國立交通大學 運科管系 計算機概論
樹狀結構之線性表示法樹狀結構之線性表示法((Linear representationsLinear representations))
層級表示法層級表示法 (level number notation):(level number notation):
A
CB D
E F G H I J K
A1 B2 E3 F3 C2 G3 H3 I3 D2 J3 K3A1 B2 E3 F3 C2 G3 H3 I3 D2 J3 K3
1111國立交通大學 運科管系 計算機概論
樹狀結構之線性表示法樹狀結構之線性表示法((Linear representationsLinear representations))
子數表示法子數表示法 (children number notation):(children number notation):
A
CB D
E F G H I J K
AA33 B B22 E E00 F F00 C C33 G G00 H H00 I I00 D D22 J J00 K K00
1212國立交通大學 運科管系 計算機概論
前序處置程序前序處置程序 (Preorder traversal)(Preorder traversal)
先處置樹根由左而右以前序處置程序處置樹根之下 的各個子樹
A
CB
D
E F GA B E C F G DA B E C F G D
1313國立交通大學 運科管系 計算機概論
後序處置程序後序處置程序 (Postorder traversal)(Postorder traversal)由左而右以後序處置程序處置樹根之下 的各個子樹處置樹根
A
CB
D
E F GE B F D G C AE B F D G C A
1414國立交通大學 運科管系 計算機概論
中序處置程序中序處置程序 (Ineorder traversal)(Ineorder traversal) ── 只適用於二元樹只適用於二元樹 (Binary tree)(Binary tree)以中序處置程序先處置樹根之下的左子樹再處置樹根以中序處置程序處置樹根之下的右子樹
A
CB
D
E F GE B A F C G DE B A F C G D
1515國立交通大學 運科管系 計算機概論
由處置程序推導二元樹由處置程序推導二元樹
已知二元樹之已知二元樹之前序處置程序前序處置程序與與後序處置後序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
已知二元樹之已知二元樹之前序處置程序前序處置程序與與中序處置中序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
已知二元樹之已知二元樹之後序處置程序後序處置程序與與中序處置中序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
1616國立交通大學 運科管系 計算機概論
已知二元樹之已知二元樹之前序處置程序前序處置程序與與中序處置中序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
前序處置程序前序處置程序 A B E C F G DA B E C F G D 中序處置程序中序處置程序 E B A F C G DE B A F C G D
A
CB
D
E F G 前序:前序: AA ( B E C F G D ) ( B E C F G D )
中序:中序: ( E B ) ( E B ) AA ( F C G D ) ( F C G D )
前序:前序: AA ( ( BB ( E ) ( E ) CC ( F G D ) ) ( F G D ) )
中序:中序: ( ( E ) ( ( E ) BB ) ) AA ( ( F ) ( ( F ) CC ( G D ) ) ( G D ) )
前序:前序: A ( B ( E ) CA ( B ( E ) C ( F( F GG ( D ) ( D ) ) )) )
中序:中序: ( ( E ) B )( ( E ) B ) A ( ( F )A ( ( F ) CC (( GG ( D ) ( D ) )) ))
1717國立交通大學 運科管系 計算機概論
已知二元樹之已知二元樹之後序處置程序後序處置程序與與中序處置中序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
後序處置程序後序處置程序 E B F D G C AE B F D G C A 中序處置程序中序處置程序 E B A F C G DE B A F C G D
A
CB
D
E F G 後序:後序: ( E B F D G C ) ( E B F D G C ) AA
中序:中序: ( E B ) ( E B ) AA ( F C G D ) ( F C G D )
後序:後序: (( ( E ) ( E ) BB ( F D G ) ( F D G ) CC ) A) A
中序:中序: (( ( E ) ( E ) BB ) A () A ( ( F ) ( F ) CC ( G D ) ( G D ) ))
後序:後序: ( ( E ) B ( F( ( E ) B ( F ( D ) ( D ) GG ) C ) A) C ) A
中序:中序: ( ( E ) B ) A ( ( F ) C (( ( E ) B ) A ( ( F ) C ( GG ( D ) ( D ) ) )) )
1818國立交通大學 運科管系 計算機概論
已知二元樹之已知二元樹之前序處置程序前序處置程序與與後序處置後序處置程序程序能否推導?其解是否唯一?能否推導?其解是否唯一?
前序處置程序前序處置程序 A B E C F G DA B E C F G D 後序處置程序後序處置程序 E B F D G C AE B F D G C A
前序:前序: A ( B E C F G D )A ( B E C F G D )
後序:後序: ( E B F D G C ) A( E B F D G C ) A
前序:前序: A ( B ( E ) C ( F G D ) )A ( B ( E ) C ( F G D ) )
後序:後序: ( ( E ) B ( F D G ) C ) A( ( E ) B ( F D G ) C ) A
前序:前序: A ( B ( E ) C ( F G ( D ) ) )A ( B ( E ) C ( F G ( D ) ) )
後序:後序: ( ( E ) B ( F ( D ) G ) C ) A( ( E ) B ( F ( D ) G ) C ) A
A
CB
D
E F G
A
CB
D
E F G
A
CB
D
E F G
A
CB
D
E F G
1919國立交通大學 運科管系 計算機概論
樹狀結構之應用樹狀結構之應用 資料搜尋資料搜尋 資料排序資料排序 資料庫索引資料庫索引 家譜家譜 組織階層架構組織階層架構 迷宮迷宮
2020國立交通大學 運科管系 計算機概論
樹狀結構之應用樹狀結構之應用 組織階層架構組織階層架構
總經理
業務部經理 廣告部經理 財務部經理
專員 專員 專員業務員 業務員 業務員 業務員
Top Related