0% found this document useful (0 votes)
82 views

Full and Complete Binary Trees

The document discusses several theorems regarding properties of full and complete binary trees: 1. For a full binary tree, if the number of internal nodes is known, the total number of nodes and number of leaves can be determined using formulas. 2. For a full binary tree, it is proven by induction that if there are I internal nodes, there are I+1 leaves. 3. For any binary tree, the maximum number of leaves is 2 to the power of the number of levels minus 1. This is also proven by induction. 4. Additional theorems state properties of binary trees regarding the maximum number of nodes per level, total number of nodes, and relationship between levels, leaves

Uploaded by

biswasrajib
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
82 views

Full and Complete Binary Trees

The document discusses several theorems regarding properties of full and complete binary trees: 1. For a full binary tree, if the number of internal nodes is known, the total number of nodes and number of leaves can be determined using formulas. 2. For a full binary tree, it is proven by induction that if there are I internal nodes, there are I+1 leaves. 3. For any binary tree, the maximum number of leaves is 2 to the power of the number of levels minus 1. This is also proven by induction. 4. Additional theorems state properties of binary trees regarding the maximum number of nodes per level, total number of nodes, and relationship between levels, leaves

Uploaded by

biswasrajib
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Full and Complete Binary Trees

Binary Tree Theorems 1

Here are two important types of binary trees. Note that the definitions, while similar, are logically independent. Definition: a binary tree T is full if each node is either a leaf or possesses exactly two child nodes.
Full but not complete.

Definition:

a binary tree T with n levels is complete if all levels except possibly the last are completely full, and the last level has all its nodes to the left side.
Complete but not full.

Neither complete nor full.

Full and complete. CS@VT

Data Structures & Algorithms

2000-2009 McQuain

Full Binary Tree Theorem


Theorem: (a) (b) (c) (d) (e) (f) Let T be a nonempty, full binary tree Then:

Binary Tree Theorems 2

If T has I internal nodes, the number of leaves is L = I + 1. If T has I internal nodes, the total number of nodes is N = 2I + 1. If T has a total of N nodes, the number of internal nodes is I = (N 1)/2. If T has a total of N nodes, the number of leaves is L = (N + 1)/2. If T has L leaves, the total number of nodes is N = 2L 1. If T has L leaves, the number of internal nodes is I = L 1.

Basically, this theorem says that the number of nodes N, the number of leaves L, and the number of internal nodes I are related in such a way that if you know any one of them, you can determine the other two.
CS@VT

Data Structures & Algorithms

2000-2009 McQuain

Proof of Full Binary Tree Theorem

Binary Tree Theorems 3

proof of (a):We will use induction on the number of internal nodes, I. Let S be the set of all integers I 0 such that if T is a full binary tree with I internal nodes then T has I + 1 leaf nodes. For the base case, if I = 0 then the tree must consist only of a root node, having no children because the tree is full. Hence there is 1 leaf node, and so 0 S. Now suppose that for some integer K 0, every I from 0 through K is in S. That is, if T is a nonempty binary tree with I internal nodes, where 0 I K, then T has I + 1 leaf nodes. Let T be a full binary tree with K + 1 internal nodes. Then the root of T has two subtrees L and R; suppose L and R have IL and IR internal nodes, respectively. Note that neither L nor R can be empty, and that every internal node in L and R must have been an internal node in T, and T had one additional internal node (the root), and so K + 1=IL + IR + 1. Now, by the induction hypothesis, L must have IL+1 leaves and R must have IR+1 leaves. Since every leaf in T must also be a leaf in either L or R, T must have IL + IR + 2 leaves. Therefore, doing a tiny amount of algebra, T must have K + 2 leaf nodes and so K + 1 S. Hence by Mathematical Induction, S = [0, ). QED

CS@VT

Data Structures & Algorithms

2000-2009 McQuain

Limit on the Number of Leaves


Theorem:

Binary Tree Theorems 4

Let T be a binary tree with levels. Then the number of leaves is at most 2-1.

proof: We will use strong induction on the number of levels, . Let S be the set of all integers 1 such that if T is a binary tree with levels then T has at most 2-1 leaf nodes. For the base case, if = 1 then the tree must have one node (the root) and it must have no child nodes. Hence there is 1 leaf node (which is 2-1 if = 1), and so 1 S. Now suppose that for some integer K 1, all the integers 1 through K are in S. That is, whenever a binary tree has M levels with M K, it has at most 2M-1 leaf nodes. Let T be a binary tree with K + 1 levels. If T has the maximum number of leaves, T consists of a root node and two nonempty subtrees, say S1 and S2. Let S1 and S2 have M1and M2 levels, respectively. Since M1 and M2 are between 1 and K, each is in S by the inductive assumption. Hence, the number of leaf nodes in S1 and S2 are at most 2K-1 and 2K-1, respectively. Since all the leaves of T must be leaves of S1 or of S2, the number of leaves in T is at most 2K-1 + 2K-1 which is 2K. Therefore, K + 1 is in S. Hence by Mathematical Induction, S = [1, ). QED
CS@VT

Data Structures & Algorithms

2000-2009 McQuain

More Useful Facts


Theorem:

Binary Tree Theorems 5

Let T be a binary tree. For every k 0, there are no more than 2k nodes in level k.

Theorem:

Let T be a binary tree with levels. Then T has no more than 2 1 nodes.

Theorem:

Let T be a binary tree with N nodes. Then the number of levels is at least log (N + 1).

Theorem:

Let T be a binary tree with L leaves. Then the number of levels is at least log L + 1.

CS@VT

Data Structures & Algorithms

2000-2009 McQuain

You might also like