# Study sets matching "binary trees"

Study sets

Diagrams

Classes

Users

A binary search tree is a binary tree w…

For each node in a binary search tree:

"Comparable" object belongs to a class…

We use the class Comparable's method __…

Comparable

The data in a node is greater than the data in the node's left…

Comparable

compareTo... *The basis for this comparison varies from class to…

A binary search tree is a binary tree w…

Comparable

For each node in a binary search tree:

The data in a node is greater than the data in the node's left…

Full Binary Tree

Complete Binary Tree

Perfect Binary Tree

Balanced Binary Tree

A Binary Tree is full if every node has 0 or 2 children. Follo…

A Binary Tree is complete Binary Tree if all levels are comple…

A Binary tree is Perfect Binary Tree in which all internal nod…

A binary tree is balanced if height of the tree is O(Log n) wh…

Full Binary Tree

A Binary Tree is full if every node has 0 or 2 children. Follo…

Complete Binary Tree

A Binary Tree is complete Binary Tree if all levels are comple…

Advantages of Trees:

Nodes

Edges

Root

1. Quick insertion and deletion... 2. Quick search

Where we store a typical piece of data

The lines connecting nodes

The node at the top of the tree

Advantages of Trees:

1. Quick insertion and deletion... 2. Quick search

Nodes

Where we store a typical piece of data

Parent

Child

Leaf

Root

A node that has a direct connection to a descending node(s)

A node that has a direct connection to an ascending node(s)

A node whose children are empty

A node that is not a child of any other node.

Parent

A node that has a direct connection to a descending node(s)

Child

A node that has a direct connection to an ascending node(s)

degenerate

balanced

complete

rooted

only one child. linked list data structure behavior

mostly two children. every node needs balance (left & right su…

always two children; full row filled left to right

root node and at most two children

degenerate

only one child. linked list data structure behavior

balanced

mostly two children. every node needs balance (left & right su…

LT and RT

Struct of Binary tree node

Height of a binary tree

Copy tree

Subtree names

Template <class elemType>... {... elemType info;... Struct binaryTreeNo…

Count the nodes from the root to the lowest child

Shallow Copy of binary tree

LT and RT

Subtree names

Struct of Binary tree node

Template <class elemType>... {... elemType info;... Struct binaryTreeNo…

Tree

Binary tree

Implementing a linked list:

Implementing a binary tree:

Data type that consists of Nodes and edges... Can be empty or no…

A tree with at most two children per node. ... left child and ri…

Data fields in Node:... T value... Link to the next node... Data field…

Min data fields of a node:... T value... Link to left child... Link to…

Tree

Data type that consists of Nodes and edges... Can be empty or no…

Binary tree

A tree with at most two children per node. ... left child and ri…

Test a Binary Tree

Heap

Removal of item in Heap

Insert in a Heap

use In order traversal... after several deletions and insertions…

is a complete Binary Tree... it's root holds the Minimum element…

Remove Root node... replace Root with LIH(last in heap)... while(LIH…

Insert into last space in heap or bottom... while (Node > parent…

Test a Binary Tree

use In order traversal... after several deletions and insertions…

Heap

is a complete Binary Tree... it's root holds the Minimum element…

Tree ADT

Nodes

Edges

Root

Nonlinear abstract data type that stores elements in a hierarc…

Elements in the tree

Connections between nodes

Distinguished element that is the origin of the tree... -only ONE…

Tree ADT

Nonlinear abstract data type that stores elements in a hierarc…

Nodes

Elements in the tree

Run time of Binary Search Trees

Binary Search vs Linear Search

How are trees useful?

Trees

Average run time of most operations is O(log N).

Binary search...... Requires that data items should be in ascendi…

--used to implement the file system of several popular operati…

A data structure! ... --a tree is a collection of nodes. Unless e…

Run time of Binary Search Trees

Average run time of most operations is O(log N).

Binary Search vs Linear Search

Binary search...... Requires that data items should be in ascendi…

True or False: A node in a binary tree…

True or False: A binary tree node is ge…

Which of the following sequences would…

Which of the following sequences would…

False

True

A, B, D, E, C, F, G

D, E, B, F, G, C, A

True or False: A node in a binary tree…

False

True or False: A binary tree node is ge…

True

Binary Tree

Binary Tree Node

Binary Tree Node Struct

Parent

Set of nodes connected by pointers. Each node has two pointers…

Contains data field, pointer to left child and pointer to righ…

Write the struct for a Binary Tree Node.

Root has no parent. If the root has a children, that node's pa…

Binary Tree

Set of nodes connected by pointers. Each node has two pointers…

Binary Tree Node

Contains data field, pointer to left child and pointer to righ…

Pre-order traversal

In-order traversal

Post-order traversal

Advantages of linked lists

1. Start at the root node.... 2. Traverse left sub tree.... 3. Trave…

1. Traverse left sub tree.... 2. Visit root node.... 3. Traverse rig…

1. Traverse left sub tree.... 2. Traverse right sub tree.... 3. Visi…

No elements need to be shuffled around in memory.... New elements…

Pre-order traversal

1. Start at the root node.... 2. Traverse left sub tree.... 3. Trave…

In-order traversal

1. Traverse left sub tree.... 2. Visit root node.... 3. Traverse rig…

binary trees

binary search trees

binary search trees time complexity

binary tree node

a nonlinear linked data structure in which each node may point…

binary tree whose data is ordered to simplify searches... search…

worst: O(n)... average: O(log2(n))... time slows down- searching fo…

holds:... 1. the data (value field)... 2. a pointer to its left chil…

binary trees

a nonlinear linked data structure in which each node may point…

binary search trees

binary tree whose data is ordered to simplify searches... search…

Binary Tree

Internal Nodes vs. Leafs

Full Tree

Complete Tree

-Made up of Nodes... -Nodes root together to form subtrees

-Internal Nodes have node children... -Leafs have no node children

each node is internal w/ 2 children or leaf

All levels except d-1 are full

Binary Tree

-Made up of Nodes... -Nodes root together to form subtrees

Internal Nodes vs. Leafs

-Internal Nodes have node children... -Leafs have no node children

Depth of a Node

Height of a node

Level of a node

Height of a tree

Number of edges from the root to the node

Number of edges from the node to the deepest leaf

depth of the node + 1

height of tree = height of root

Depth of a Node

Number of edges from the root to the node

Height of a node

Number of edges from the node to the deepest leaf

B. binary search tree

A. length

B. depth

C. height

A __________ (with no duplicate elements) has the property tha…

The ________ of a path is the number of the edges in the path.

The _______ of a node is the length of the path from the root…

The _______ of a nonempty tree is the length of the path from…

B. binary search tree

A __________ (with no duplicate elements) has the property tha…

A. length

The ________ of a path is the number of the edges in the path.

There are n nodes in a tree. How many e…

Run time for in order tree walk

Describe in order tree walk

Run time for tree search

n-1

theta(n). Every node is traversed once.

Print left subtree, node, and right subtree

order(h), where log(n) <= h <= n

There are n nodes in a tree. How many e…

n-1

Run time for in order tree walk

theta(n). Every node is traversed once.

What is the time complexity of binary s…

why is inserting an item's time complex…

why is finding an item's time complexit…

What are the benefits of binary trees?

O(LogN)

- We may need to move N-1 items, if item is inserted at index…

We can use binary search O(logN) and make use of the indexing…

Combines dynamic link and binary searches for finding elements.

What is the time complexity of binary s…

O(LogN)

why is inserting an item's time complex…

- We may need to move N-1 items, if item is inserted at index…

traversal

InOrder traversal

PostOrder traversal

PreOrder Traversal (DFS)

algorithm that iterates through each node of a binary tree exa…

a recursive algorithm that processes a tree's elements in left…

a recursive algorithm that processes elements in left-right-ro…

recursive algorithm that processes elements in a tree root-lef…

traversal

algorithm that iterates through each node of a binary tree exa…

InOrder traversal

a recursive algorithm that processes a tree's elements in left…

BST

Searching in a BST

Add algorithm

Implementing BSTs using Links

Binary tree with an ordering property of its elements such tha…

Data is stored in a way that it can be more efficiently found…

Follow algorithm for searching until there is no child and ins…

LinkedBinarySearchTree... Constructors: use super()... addElement:…

BST

Binary tree with an ordering property of its elements such tha…

Searching in a BST

Data is stored in a way that it can be more efficiently found…

Binary Tree

Root

Left subtree

Right subtree

Finite set of nodes that is either empty and consists of a roo…

The first node in a binary tree which contains two trees linke…

A subtree on the left of its parent and has to be less than or…

A subtree that is larger than its parent tree.

Binary Tree

Finite set of nodes that is either empty and consists of a roo…

Root

The first node in a binary tree which contains two trees linke…