CSE 331 Spring 2008, Section 1
Homework 4 Solutions
1.
Let
h
= 0.
This gives us a binary “tree” with a single node.
For this case, 2
h
+1
– 1 = 2
1
– 1 = 2 – 1
= 1.
Thus, the maximum number of nodes in a binary tree of height
h
is 2
h
+1
– 1 when
h
= 0.
Assume that for some
k
≥ 0, the maximum number of nodes in a binary tree of height
k
is known
to be 2
k
+1
– 1.
Consider a binary tree of height
k
+ 1.
The root node can have at most two
subtrees.
Each subtree can have a height of at most
k
.
By our inductive hypothesis, these subtrees
can contain a maximum of 2
k
+1
– 1 nodes.
Considering these two subtrees and the root, the
maximum number of nodes in a binary tree of height
k
+ 1 is therefore 2 * (2
k
+1
– 1) + 1.
Distributing terms, 2 * (2
k
+1
– 1) + 1 = 2 * 2
k
+1
– 2 + 1 = 2
(
k
+1) + 1
– 1.
By induction, the maximum number of nodes in a binary tree of height
h
is 2
h
+1
– 1 for any
h
≥ 0.
2.
(a)
At depth
d
of a perfect binary tree, there will be 2
d
nodes.
The depths of the nodes will range
from 0 to
h
, the height of the tree.
In #1, we established that there are 2
h
+1
– 1 nodes in a perfect
binary tree of height
h
.
Therefore, the average depth of the nodes will be
∑
d
=
0
h
d
2
d
/
2
h
1
−
1
.
To figure out what sort of values we can expect, it would be very nice to get rid of the summation.
If we write out a few terms of the series starting from
h
= 1, we get 2, 10, 34, 98, 258, 642...
If we
subtract 2 from each of these terms, we get the much nicerlooking series 0, 8, 32, 96, 256, 640...
Factoring each of these terms gets us the stillnicerlooking series 0, 2
3
, 2
5
, 3 * 2
5
, 2
8
, 5 * 2
7
...
We
can then rearrange the terms slightly to get 0 * 2
2
, 1 * 2
3
, 2 * 2
4
, 3 * 2
5
, 4 * 2
6
, 5 * 2
7
.
From this, it
seems reasonable to guess that
∑
d
=
0
h
d
2
d
=
h
−
1
2
h
1
2 .
We can prove this by induction.
●
Let
h
= 0.
∑
d
=
0
0
d
2
d
=
0
2
0
=
0 .
0
−
1
2
0
1
2
=−
1
2
2
=
2
−
2
=
0 .
This formula
holds for the base case of
h
= 0.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
This is the end of the preview.
Sign up
to
access the rest of the document.
 Spring '08
 M.McCullen
 Algorithms, Data Structures, leaf node, perfect binary tree

Click to edit the document details