#
Errata and Clarifications

###
Chapter
1, page
30,
Method checkBDay

####
Contributor(s):
Michael W Goldwasser

Add opening brace to if statement.

###
Chapter
3, page
112,
third itemized paragraph

####
Contributor(s):
Michael Goldwasser

Replace

counter *i* starts at 0

with
counter *i* starts at 1

Note that counter
*i* reaches value *n* before the loop condition
kicks in.
###
Chapter
3, page
112,
fourth itemized paragraph

####
Contributor(s):
Mingzhou Song

Replace

*A[currentMax]*

with
*A[i]*

###
Chapter
4, page
138,
Example 4.3, last line of the table

####
Contributor(s):
David Weaver

Replace

pop()

with
top()

###
Chapter
4, page
142,
Code Fragment 4.4, Javadoc comment
for variable capacity

####
Contributor(s):
Michael Goldwasser

Replace Lenght with Length

###
Chapter
4, page
165,
Code Fragment 4.12, method
dequeue

####
Contributor(s):
Michael Goldwasser

The statement

tail = null;

should be
indented further
###
Chapter
5, page
196,
Method insertBefore

####
Contributor(s):
Tara Whalen, Aron Klein

Remove

an error occurs if *p* is the first
position

###
Chapter
5, page
196,
Method insertAfter

####
Contributor(s):
Tara Whalen, Aron Klein

Remove

an error occurs if *p* is the last
position

###
Chapter
5, page
208,
Code Fragment 5.12, method
atRank

####
Contributor(s):
Michael Goldwasser

Replace

O(1) time

with
O(*n*)
time

###
Chapter
5, page
215,
method nextPosition

####
Contributor(s):
Ashenafi Mammo

Replace

**Output:** Object

with
**Output:** Position

###
Chapter
5, page
217,
caption of Figure 5.10

####
Contributor(s):
Martin Suchy

Replace

Sequence inherits from
Sequence

with
Vector
inherits from InspectableVector

###
Chapter
6, page
229,
itemized paragraphs

####
Contributor(s):
Charles Wallace

Replace

called the root of *T*

with
called the root of *T*, with no parent
node

Replace
has a parent node

with
has a
unique parent node

###
Chapter
7, page
322,
seventh line of table in Example
7.8

####
Contributor(s):
Lars Andersen

In the *Output* column, replace *A* with -.
Namely, nothing should be returned by the call to method
remove.

###
Chapter
8, page
350,
third line of last paragraph

####
Contributor(s):
Michael Goodrich

Remove the ceiling notion from the fraction *n/N*.
That is, change

[*n/N*]

to
*n/N*

.
###
Chapter
8, page
356,
second line of first paragraph

####
Contributor(s):
Michael Goodrich

Remove the ceiling notion from the fraction *n/N*.
That is, change

[*n/N*]

to
*n/N*

.
###
Chapter
9, page
399,
second paragraph

####
Contributor(s):
Sharat Chandran, Frederick Beaupre, Troy Vasiga, David Mount

Replace

let *x* be a child of *y* with largest height.

with
let *x* be the child of *y* defined as follows:
if one of the chidren of *y* is taller than the other,
let *x* be the taller child of *y*; else (both
children of *y* have the same height), let *x*
be the child of *y* on the same side as *y*
(that is, if *y* is a left child, let *x* be the
left child of *y*, else let *x* be the right
child of *y*).

Remove the sentence
The choice of *x* may not be unique, since the
subtrees of *y* may have the same height.

###
Chapter
10, page
455,
first two lines of first paragraph

####
Contributor(s):
Raffi N. Mazmanian

Replace

*S*_{1} and
*S*_{1}

with
*S*_{1} and *S*_{2}

###
Chapter
11, page
501,
third line of second paragraph

####
Contributor(s):
Helmar Burkhart

Replace

Thus, in the worst case, ..., time

with
Note that, when *m* = *n*/2, this algorithm has
quadratic running time O(*n*^{2})

###
Chapter
12, page
596,
first line of last paragraph

####
Contributor(s):
Mingzhou Song

Replace

description the algorithms

with
description of the algorithms