by

Foundations of Algorithms, Fifth Edition offers a well-balanced presentation of algorithm design, complexity analysis of algorithms, and computational complexity. Ideal for any computer science students with a background in college algebra and discrete structures, the text presents mathematical concepts using standard English and simple notation to maximize accessibility and user-friendliness. Concrete examples, appendices reviewing essential mathematical concepts, and a student-focused approach reinforce theoretical explanations and promote learning and retention. C++ and Java pseudocode help students better understand complex algorithms. A chapter on numerical algorithms includes a review of basic number theory, Euclid’s Algorithm for finding the greatest common divisor, a review of modular arithmetic, an algorithm for solving modular linear equations, an algorithm for computing modular powers, and the new polynomial-time algorithm for determining whether a number is prime.

The revised and updated Fifth Edition features an all-new chapter on genetic algorithms and genetic programming, including approximate solutions to the traveling salesperson problem, an algorithm for an artificial ant that navigates along a trail of food, and an application to financial trading. With fully updated exercises and examples throughout and improved instructor resources including complete solutions, an Instructor’s Manual and PowerPoint lecture outlines, Foundations of Algorithms is an essential text for undergraduate and graduate courses in the design and analysis of algorithms.

Key features include:

• The only text of its kind with a chapter on genetic algorithms

• Use of C++ and Java pseudocode to help students better understand complex algorithms

• No calculus background required

• Numerous clear and student-friendly examples throughout the text

• Fully updated exercises and examples throughout

• Improved instructor resources, including complete solutions, an Instructor’s Manual, and PowerPoint lecture outlines.