35
Chapter 9 introduces trees . This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures Data Structures and Other Objects and Other Objects Using Java Using Java

P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Embed Size (px)

Citation preview

Page 1: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Chapter 9 introduces trees. This presentation illustrates the

simplest kind of trees: Complete Binary Trees.

Complete Binary TreesComplete Binary Trees

Data StructuresData Structuresand Other Objectsand Other ObjectsUsing JavaUsing Java

Page 2: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Binary TreesBinary Trees

A binary tree has nodes, similar to nodes in a linked list structure.

Data of one sort or another may be stored at each node.

But it is the connections between the nodes which characterize a binary tree.

Page 3: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Binary TreesBinary Trees

A binary tree has nodes, similar to nodes in a linked list structure.

Data of one sort or another may be stored at each node.

But it is the connections between the nodes which characterize a binary tree.

An example canillustrate how theconnections work

An example canillustrate how theconnections work

Page 4: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

In this example, the data contained at each node is one of the 50 states.

Page 5: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Each tree has a special node called its root, usually drawn at the top.

Page 6: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Each tree has a special node called its root, usually drawn at the top. The example tree

has Washingtonas its root.

The example treehas Washington

as its root.

Page 7: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Each node is permitted to have two links to other nodes, called the left child and the right child.

Page 8: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Each node is permitted to have two links to other nodes, called the left child and the right child.

Page 9: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Children are usually drawn below a node.

The right child ofWashington is

Colorado.

The right child ofWashington is

Colorado.

The left child ofWashington is

Arkansas.

The left child ofWashington is

Arkansas.

Page 10: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Some nodes have only one child.

Arkansas has aleft child, but no

right child.

Arkansas has aleft child, but no

right child.

Page 11: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A QuizA Quiz

Some nodes have only one child.

Which node hasonly a right child?Which node has

only a right child?

Page 12: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A QuizA Quiz

Some nodes have only one child.

Florida hasonly a right child.

Florida hasonly a right child.

Page 13: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

A node with no children is called a leaf or terminal node.

Page 14: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Each node is called the parent of its children.

Washington is theparent of Arkansas

and Colorado.

Washington is theparent of Arkansas

and Colorado.

Page 15: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Two rules about parents:

The root has no parent.

Every other node has exactly one parent.

Page 16: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

A Binary Tree of StatesA Binary Tree of States

Two nodes with the same parent are called siblings.

Arkansasand Coloradoare siblings.

Arkansasand Coloradoare siblings.

Page 17: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

A complete binary tree is a special kind of binary tree which will be useful to us.

Page 18: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

A complete binary tree is a special kind of binary tree which will be useful to us.

When a completebinary tree is built,

its first node must bethe root.

When a completebinary tree is built,

its first node must bethe root.

Page 19: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The second node of a complete binary tree is always the left child of the root...

Page 20: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The second node of a complete binary tree is always the left child of the root...

... and the third node is always the right child of the root.

Page 21: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 22: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 23: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 24: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 25: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 26: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Complete Binary TreesComplete Binary Trees

The next nodes must always fill the next level from left to right.

Page 27: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Is This Complete?Is This Complete?

Page 28: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Is This Complete?Is This Complete?

Page 29: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Is This Complete?Is This Complete?

Page 30: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Is This Complete?Is This Complete?

Page 31: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Is This Complete?Is This Complete?

Yes! It is called the empty

tree, and it has no nodes, not even a root.

Page 32: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Implementing a Complete Binary TreeImplementing a Complete Binary Tree

We will store the data from the nodes in a partially-filled array.

An array of dataWe don't care what's inthis part of the array.

An integer to keeptrack of how many nodes are in the tree

3

Page 33: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Implementing a Complete Binary TreeImplementing a Complete Binary Tree

We will store the date from the nodes in a partially-filled array.

An array of dataWe don't care what's inthis part of the array.

An integer to keeptrack of how many nodes are in the tree

3

Read Section 9.2 tosee details of how

the entries are stored.

Read Section 9.2 tosee details of how

the entries are stored.

Page 34: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

Binary trees contain nodes. Each node may have a left child and a right child. If you start from any node and move upward, you

will eventually reach the root. Every node except the root has one parent. The

root has no parent. Complete binary trees require the nodes to fill in

each level from left-to-right before starting the next level.

Summary Summary

Page 35: P p Chapter 9 introduces trees. p p This presentation illustrates the simplest kind of trees: Complete Binary Trees. Complete Binary Trees Data Structures

THE ENDTHE END

Presentation copyright 1999 Addison Wesley Longman,For use with Data Structures and Other Objects Using Javaby Michael Main.

Some artwork in the presentation is used with permission from Presentation Task Force(copyright New Vision Technologies Inc) and Corel Gallery Clipart Catalog (copyrightCorel Corporation, 3G Graphics Inc, Archive Arts, Cartesia Software, Image ClubGraphics Inc, One Mile Up Inc, TechPool Studios, Totem Graphics Inc).

Students and instructors who use Data Structures and Other Objects Using Java are welcometo use this presentation however they see fit, so long as this copyright notice remainsintact.