Errata for DATA STRUCTURES AND PROGRAM DESIGN IN C++ by Robert L. Kruse and Alexander J. Ryba Copyright (c) 1999 by Prentice Hall, Inc., Upper Saddle River, N.J. 07458 p. 18, E5(b), next-to-last line should be "loop2 = loop1 + 1;" p. 32, E3(e): The first line should read: A function that sorts an array a containing n integers indexed from 0 to n - 1 p. 64, E1, private data members: "int top" should be "int count". p. 118, Fig. 4.3: The column of code (on the right) is C, not C++. The four lines should read: p = NULL; p = new Item; *p = 1378; delete p; p. 313, E12, line 2: Change "O(f(n))" to "Theta(f(n))". line 3: Change "transitive" to "symmetric". p. 313, E13, line 2: Change "transitive" to "reflexive". p. 371, E6: Change "lg((n+1)/(k+1))" to "lg(n/(k+1))". p. 506, Fig. 10.33(a): Both arcs at the bottom of part (a) should be labelled 1 (as done in part (c)). p. 524, Fig. 11.3: At upper right, "next_child" should be "next_sibling". p. 536, definition of B-tree: Change "m-way tree" to "m-way search tree". p. 547, Fig. 11.13: Final node shown at lower right should have entries h and j rather than b and d. p. 591, Fig. 12.13(g): Top circle should contain a 3. p. 616, E1 - E5: The symbol "!" is intended to represent "factorial" (a right unary operator) in all these exercises, except for E1(d), E2(c), E4(c), and E5(d), where "!" more reasonably represents "not" (a left unary operator). ***************************************************************************** The following misprints are unlikely to cause confusion: p. 26, line 12: Change "the the" to "the". p. 90, line 9: Change "retrun" to "return". p. 106, line 4 of method shut_down: Change "conluded" to "concluded". p. 140, line 1 of E5: Change "Figure 4.13" to "Figure 4.14". p. 147, line 13: Change ":" to "." before word "Thus". p. 195, Fig. 5.15, bottom: Two arrow shafts are missing. p. 215, line 1 of first specification should not be indented. p. 246, last line: Change "s(ubstitue)" to "s(ubstitute)". p. 260, bottom of diagram: Change "L:" to "head:" (3 times). p. 275, line 4 of test_search: Change "funtion" to "function". p. 314, E16, displayed limit: Change ";" to ",". p. 324, "Uses:" line: Change "Record. The" to "Record, the". p. 331, "Uses:" line of max_key: Change "Record. The" to "Record, the". p. 334, Fig. 8.7: The arrow shafts are missing in the "3-Sorted" column. p. 362, E8(f): Insert a semicolon ";" after "swap(i,j)". p. 396, "Uses:" line: Delete comma "," after "List". p. 405, "Uses:" line: Change "Key, and Record. The" to "Key and Record, the". p. 408, line -5, and p. 410, line 5: Change "Key_type" to "Key". pp. 439, 440, "Post:" lines: Change "been been" to "been" (4 occurrences). p. 443, E12: Last line of code for method B needs a semicolon ";" at end. p. 458, line 3: insert comma at end; line 4: insert comma after "returned". p. 480, Fig. 10.19, left diagram: The symbol "\" belongs inside the circle. p. 615, line 9: Change "subexpresssion" to "subexpression". p. 626, Fig. 13.7, bottom: "Lexicon" should be in color. p. 669, line 6: Change "psuedorandom" to "pseudorandom". *****************************************************************************