Top Banner
Alyce Brady Alyce Brady CS 470: Data Structures CS 470: Data Structures CS 510: Computer CS 510: Computer Algorithms Algorithms Post-order Traversal: Post-order Traversal: Left Child - Right Child - Root Left Child - Right Child - Root Depth-First Search
48

Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Mar 28, 2015

Download

Documents

Adrienne Wyand
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Alyce BradyAlyce Brady

CS 470: Data StructuresCS 470: Data Structures

CS 510: Computer Algorithms CS 510: Computer Algorithms

Post-order Traversal:Post-order Traversal:

Left Child - Right Child - RootLeft Child - Right Child - Root

Depth-First Search

Page 2: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

Page 3: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

Page 4: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

Page 5: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

HH

Post-order Traversal:Left Child - Right Child - Root

Page 6: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

HH

Post-order Traversal:Left Child - Right Child - Root

Page 7: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

HH

Page 8: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H IH I

Page 9: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H IH I

Page 10: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I DH I D

Page 11: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I DH I D

Page 12: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I DH I D

Page 13: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I DH I D

Page 14: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D JH I D J

Page 15: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D JH I D J

Page 16: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D JH I D J

Page 17: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J KH I D J K

Page 18: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J KH I D J K

Page 19: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K EH I D J K E

Page 20: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K EH I D J K E

Page 21: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E BH I D J K E B

Page 22: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E BH I D J K E B

Page 23: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E BH I D J K E B

Page 24: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E BH I D J K E B

Page 25: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E BH I D J K E B

Page 26: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B LH I D J K E B L

Page 27: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B LH I D J K E B L

Page 28: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B LH I D J K E B L

Page 29: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L MH I D J K E B L M

Page 30: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L MH I D J K E B L M

Page 31: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M FH I D J K E B L M F

Page 32: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M FH I D J K E B L M F

Page 33: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M FH I D J K E B L M F

Page 34: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M FH I D J K E B L M F

Page 35: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F NH I D J K E B L M F N

Page 36: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F NH I D J K E B L M F N

Page 37: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F NH I D J K E B L M F N

Page 38: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N OH I D J K E B L M F N O

Page 39: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N OH I D J K E B L M F N O

Page 40: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N O GH I D J K E B L M F N O G

Page 41: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N O GH I D J K E B L M F N O G

Page 42: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N O G CH I D J K E B L M F N O G C

Page 43: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

A

B C

D E F G

H I J K L M N O

Post-order Traversal:Left Child - Right Child - Root

H I D J K E B L M F N O G CH I D J K E B L M F N O G C

Page 44: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Post-order Traversal:Left Child - Right Child - Root

A

B C

D E F G

H I J K L M N O

H I D J K E B L M F N O G C AH I D J K E B L M F N O G C A

Page 45: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Post-order Traversal:Left Child - Right Child - Root

A

B C

D E F G

H I J K L M N O

H I D J K E B L M F N O G C AH I D J K E B L M F N O G C A

Page 46: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Pseudo-Code forPost-order Traversal

post-traversepost-traverse

post-traverse left subtreepost-traverse left subtree

post-traverse right subtreepost-traverse right subtree

visit current nodevisit current node e.g., print valuee.g., print value

Page 47: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Time and Space Complexityfor Depth-First Search Algs.

Time ComplexityTime Complexity– Visit each node three timesVisit each node three times O(n)O(n)

first arrivalfirst arrival return from left childreturn from left child return from right childreturn from right child

Page 48: Alyce Brady CS 470: Data Structures CS 510: Computer Algorithms Post-order Traversal: Left Child - Right Child - Root Depth-First Search.

Space ComplexitySpace Complexity– Stack to handle recursionStack to handle recursion

Stack length = depth of treeStack length = depth of tree best case: lg nbest case: lg n worst case: nworst case: n O(n)O(n)

Time and Space Complexityfor Depth-First Search Algs.