• No results found

TreeTraversals

N/A
N/A
Protected

Academic year: 2020

Share "TreeTraversals"

Copied!
197
0
0

Loading.... (view fulltext now)

Full text

(1)

Binary Tree

A tree where each node has 0-2 children

Binary-search-tree property

Descendants on the left side are smaller than the

root node

Descendants on the right side are larger than the

(2)

Tree Traversals

Used to order the values in a binary tree

Three types of traversals

Preorder (root, left, right)

Postorder (left, right, root)

(3)

Preorder Traversal

Recursive procedure

Visit the root node

Visit the left node (or subtree)

Visit the right node (or subtree)

Preorder

Root

Left

(4)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

(5)

Output: H

B

F

H

D

J

A

L

E

N

C

G

I

K

M

O

(6)

Preorder Traversal Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

(7)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

(8)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(9)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(10)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(11)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(12)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(13)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(14)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(15)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(16)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(17)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(18)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(19)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(20)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(21)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(22)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(23)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(24)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(25)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(26)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(27)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(28)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(29)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(30)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(31)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(32)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(33)

Preorder Traversal - Example 1

B

F

H

D

J

A

L

E

N

I

K

M

O

G

C

(34)
(35)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

(36)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(37)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(38)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(39)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(40)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(41)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(42)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(43)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(44)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(45)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(46)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(47)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(48)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(49)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(50)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(51)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(52)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(53)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(54)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(55)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(56)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(57)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(58)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(59)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(60)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(61)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(62)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(63)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(64)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(65)

Preorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(66)
(67)

Postorder Traversal

Recursive procedure

Visit the left node (or subtree)

Visit the right node (or subtree)

Visit the root node

Postorder

Left

Right

(68)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

(69)

Postorder Traversal - Example 1

Output:

B

F

H

D

J

A

L

E

G

N

(70)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(71)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(72)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(73)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(74)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(75)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(76)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(77)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(78)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(79)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(80)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(81)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(82)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(83)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(84)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(85)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(86)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(87)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(88)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(89)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(90)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(91)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(92)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(93)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(94)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(95)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(96)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(97)

Postorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(98)
(99)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

(100)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(101)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(102)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(103)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(104)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(105)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(106)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(107)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(108)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(109)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(110)

Postorder Traversal - Example 2

B

G

D

I

A

L

F

N

C

H

J

M

O

K

(111)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(112)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(113)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(114)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(115)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(116)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(117)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(118)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(119)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(120)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(121)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(122)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(123)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(124)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(125)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(126)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(127)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(128)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(129)

Postorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(130)
(131)

Inorder Traversal

Recursive procedure

Visit the left node (or subtree)

Visit the root node

Visit the right node (or subtree)

Inorder

Left

Root

(132)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

(133)

Inorder Traversal - Example 1

Output:

B

F

H

D

J

A

L

E

G

N

(134)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(135)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(136)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(137)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(138)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(139)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(140)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(141)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(142)

Inorder Traversal Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(143)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(144)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(145)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(146)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(147)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(148)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(149)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(150)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(151)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(152)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(153)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(154)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(155)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(156)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(157)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(158)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(159)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(160)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(161)

Inorder Traversal - Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(162)
(163)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

(164)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(165)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(166)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(167)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(168)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(169)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(170)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(171)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(172)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(173)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(174)

Inorder Traversal - Example 2

B

G

D

I

A

L

F

N

C

H

J

M

O

K

E

(175)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(176)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(177)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(178)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(179)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(180)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(181)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(182)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(183)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(184)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(185)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(186)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(187)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(188)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(189)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(190)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(191)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(192)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(193)

Inorder Traversal - Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

K

(194)
(195)

Example 1

B

F

H

D

J

A

L

E

G

N

C

I

K

M

O

(196)

Example 2

B

E

G

D

I

A

L

F

N

C

H

J

M

O

(197)

Applications

Print out tree elements in order

(Inorder traversal)

Grammar parsing

http://

www.cs.cornell.edu/courses/cs2110/2014fa/L21-P

arsingTrees/cs2110fa14Parsing.pdf

Tree serialization

http://www.cs.cornell.edu/courses/cs2110/2014fa/L21-P

References

Related documents

– Traverse the left subtree in postorder manner Traverse the right subtree in posorder manner – Traverse the right subtree in posorder manner – Visit the root.. Traversals of a

Abstract :A heap is a partially sorted binary tree. Like the binary trees, heaps have a meaning for the Left and Right subtrees. The root of a heap is guaranteed to hold the

themselves binary trees, called the left and right subtrees of the original tree.. Binary

Binary search tree is a node-based binary tree data structure in which left sub tree of a node contains nodes with key value less than the root node key and right sub tree

The values of preorder, inorder and postorder ostorder traversals applied in the given example are the following: Preo Preorder: A, B, C, D, E, F, G Inorder: C, B, D, A, F, E,

• The right sub-tree (if any) is a binary search tree and all elements are greater than the root

If every non leaf node in a binary tree has non empty left and right sub trees then such tree is termed as a strictly binary tree.. • Complete

 With preorder traversal, the root is visited before its left and right subtrees.  With inorder traversal, the root is visited