Springer eBooks may be purchased by end-customers only and are sold without copy protection (DRM free). Instead, all eBooks include personalized watermarks. This means you can read the Springer eBooks across numerous devices such as Laptops, eReaders, and tablets.
You can pay for Springer eBooks with Visa, Mastercard, American Express or Paypal.
After the purchase you can directly download the eBook file or read it online in our Springer eBook Reader. Furthermore your eBook will be stored in your MySpringer account. So you can always re-download your eBooks.
This second edition contains problems from new topics including suffix trees, games and strategies, and Huffman coding
Good undergraduate introduction to programming course, especially one which is mathematically motivated
May also be used as a textbook in a graduate course on the analysis of algorithms and/or compiler construction
The "problem and solution" style makes the reader think through the programming process, making the book ideal for students in the classroom setting or for self study
"Algorithms and Programming" is primarily intended for a first year undergraduate course in programming. Structured in a problem-solution format, the text motivates the student to think through the programming process, thus developing a firm understanding of the underlying theory. Although a moderate familiarity with programming is assumed, the book is easily utilized by students new to computer science. The more advanced chapters make the book useful for a graduate course in the analysis of algorithms and/or compiler construction.
New to the second edition are added chapters on suffix trees, games and strategies, and Huffman coding as well as an appendix illustrating the ease of conversion from Pascal to C. The material covers such topics as combinatorics, sorting, searching, queues, grammar and parsing, selected well-known algorithms, and much more.
Reviews of the 1st Edition:
"The book is addressed both to ambitious students and instructors looking for interesting problems [and] fulfills this task perfectly, especially if the reader has a good mathematical background."
— Zentralblatt MATH
"This book is intended for students, engineers, and other people who want to improve their computer skills.... The chapters can be read independently. Throughout the book, useful exercises give readers a feeling for how to apply the theory."
— Computing Reviews
"Overall...the book is well done. I recommend it to teachers and those wishing to sharpen their data structure and compiler skills."
Variables, expressions, assignments.- Generation of combinatorial objects.- Tree traversal (backtracking).- Sorting.- Finite-state algorithms in text processing.- Data types.- Recursion.- Recursive and non-recursive programs.- Graph algorithms.- Pattern matching.- Games analysis.- Optimal coding.- Set representation. Hashing.- Sets, trees, and balanced trees.- Context-free grammars.- Left-to-right parsing (LR).