Note: Supplemental materials are not guaranteed with Rental or Used book purchases.
- ISBN: 9780763721299 | 0763721298
- Cover: Hardcover
- Copyright: 7/1/2002
Foundations of Algorithms Using Java Pseudocode offers a well-balanced presentation on designing algorithms, complexity analysis of algorithms, and computational complexity that is accessible to mainstream computer science students who have a background in college algebra and discrete structures. To support their approach, The authors present mathematical concepts using standard English and a simpler notation than is found in most texts. A review of essential mathematical concepts is presented in three appendices. In addition, they reinforce the explanations with numerous concrete examples to help students grasp theoretical concepts.
Preface | v | ||||
CHAPTER 1 Algorithms: Efficiency, Analysis, and Order | 1 | (46) | |||
|
2 | (7) | |||
|
9 | (8) | |||
|
9 | (3) | |||
|
12 | (5) | |||
|
17 | (8) | |||
|
17 | (7) | |||
|
24 | (1) | |||
|
24 | (1) | |||
|
25 | (16) | |||
|
25 | (2) | |||
|
27 | (12) | |||
|
39 | (2) | |||
|
41 | (6) | |||
|
42 | (5) | |||
CHAPTER 2 Divide-and-Conquer | 47 | (44) | |||
|
48 | (5) | |||
|
53 | (6) | |||
|
59 | (1) | |||
|
60 | (7) | |||
|
67 | (5) | |||
|
72 | (6) | |||
|
72 | (1) | |||
|
72 | (6) | |||
|
78 | (4) | |||
|
82 | (9) | |||
|
83 | (8) | |||
CHAPTER 3 Dynamic Programming | 91 | (46) | |||
|
92 | (5) | |||
|
97 | (8) | |||
|
105 | (2) | |||
|
107 | (9) | |||
|
116 | (9) | |||
|
125 | (12) | |||
|
133 | (4) | |||
CHAPTER 4 The Greedy Approach | 137 | (50) | |||
|
140 | (16) | |||
|
144 | (6) | |||
|
150 | (5) | |||
|
155 | (1) | |||
|
155 | (1) | |||
|
156 | (3) | |||
|
159 | (10) | |||
|
160 | (2) | |||
|
162 | (7) | |||
|
169 | (6) | |||
|
170 | (1) | |||
|
171 | (4) | |||
|
175 | (12) | |||
|
175 | (2) | |||
|
177 | (1) | |||
|
177 | (1) | |||
|
178 | (3) | |||
|
181 | (6) | |||
CHAPTER 5 Backtracking | 187 | (46) | |||
|
188 | (8) | |||
|
196 | (4) | |||
|
200 | (4) | |||
|
204 | (5) | |||
|
209 | (5) | |||
|
214 | (3) | |||
|
217 | (16) | |||
|
217 | (10) | |||
|
227 | (1) | |||
|
227 | (6) | |||
CHAPTER 6 Branch-and-Bound | 233 | (34) | |||
|
235 | (11) | |||
|
235 | (6) | |||
|
241 | (5) | |||
|
246 | (9) | |||
|
255 | (9) | |||
|
264 | (3) | |||
CHAPTER 7 Introduction to Computational Complexity: The Sorting Problem | 267 | (52) | |||
|
268 | (2) | |||
|
270 | (5) | |||
|
275 | (2) | |||
|
277 | (6) | |||
|
283 | (2) | |||
|
285 | (11) | |||
|
285 | (4) | |||
|
289 | (7) | |||
|
296 | (1) | |||
|
297 | (11) | |||
|
297 | (3) | |||
|
300 | (3) | |||
|
303 | (5) | |||
|
308 | (11) | |||
|
312 | (7) | |||
CHAPTER 8 More Computational Complexity: The Searching Problem | 319 | (56) | |||
|
320 | (10) | |||
|
322 | (2) | |||
|
324 | (6) | |||
|
330 | (3) | |||
|
333 | (6) | |||
|
334 | (4) | |||
|
338 | (1) | |||
|
339 | (5) | |||
|
344 | (31) | |||
|
344 | (2) | |||
|
346 | (7) | |||
|
353 | (5) | |||
|
358 | (8) | |||
|
366 | (4) | |||
|
370 | (5) | |||
CHAPTER 9 Computational Complexity and Intractability: An Introduction to the Theory of NP | 375 | (44) | |||
|
376 | (2) | |||
|
378 | (4) | |||
|
382 | (2) | |||
|
382 | (1) | |||
|
382 | (1) | |||
|
383 | (1) | |||
|
384 | (22) | |||
|
386 | (4) | |||
|
390 | (12) | |||
|
402 | (4) | |||
|
406 | (10) | |||
|
407 | (4) | |||
|
411 | (5) | |||
|
416 | (3) | |||
CHAPTER 10 Number-Theoretic Algorithms | 419 | (66) | |||
|
420 | (7) | |||
|
420 | (1) | |||
|
421 | (3) | |||
|
424 | (3) | |||
|
427 | (1) | |||
|
427 | (7) | |||
|
428 | (4) | |||
|
432 | (2) | |||
|
434 | (14) | |||
|
434 | (2) | |||
|
436 | (6) | |||
|
442 | (6) | |||
|
448 | (6) | |||
|
454 | (2) | |||
|
456 | (20) | |||
|
457 | (1) | |||
|
458 | (18) | |||
|
476 | (9) | |||
|
476 | (1) | |||
|
477 | (3) | |||
|
480 | (5) | |||
CHAPTER 11 Introduction to Parallel Algorithms | 485 | (26) | |||
|
488 | (7) | |||
|
488 | (2) | |||
|
490 | (1) | |||
|
491 | (4) | |||
|
495 | (16) | |||
|
497 | (8) | |||
|
505 | (3) | |||
|
508 | (3) | |||
APPENDIX A Review of Necessary Mathematics | 511 | (38) | |||
|
511 | (2) | |||
|
513 | (1) | |||
|
514 | (7) | |||
|
521 | (1) | |||
|
522 | (4) | |||
|
522 | (2) | |||
|
524 | (2) | |||
|
526 | (2) | |||
|
528 | (3) | |||
|
531 | (18) | |||
|
536 | (4) | |||
|
540 | (2) | |||
|
542 | (7) | |||
APPENDIX B Solving Recurrence Equations: With Applications to Analysis of Recursive Algorithms | 549 | (40) | |||
|
549 | (4) | |||
|
553 | (18) | |||
|
553 | (9) | |||
|
562 | (6) | |||
|
568 | (3) | |||
|
571 | (2) | |||
|
573 | (6) | |||
|
579 | (10) | |||
|
582 | (7) | |||
APPENDIX C Data Structures for Disjoint Sets | 589 | (10) | |||
REFERENCES | 599 | (6) | |||
INDEX | 605 |
What is included with this book?
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.