Logo - springer
Slogan - springer

Mathematics - Computational Science & Engineering | Algorithms and Programming - Problems and Solutions

Algorithms and Programming

Problems and Solutions

Shen, Alexander

Originally published as a monograph

2nd ed. 2010, XII, 272 p.

Available Formats:

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.


(net) price for USA

ISBN 978-1-4419-1748-5

digitally watermarked, no DRM

Included Format: PDF

download immediately after purchase

learn more about Springer eBooks

add to marked items


Hardcover version

You can pay for Springer Books with Visa, Mastercard, American Express or Paypal.

Standard shipping is free of charge for individual customers.


(net) price for USA

ISBN 978-1-4419-1747-8

free shipping for individuals worldwide

usually dispatched within 3 to 5 business days

add to marked items

  • 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."


Content Level » Research

Keywords » Computation - Computer Science - Context Free Grammars - Finite-State Automata - Graph - Huffman - Matching - Mathematical Programming - Problem Solving - Processing - Programming - Solutions - algorithms - recursion - sorting

Related subjects » Computational Science & Engineering - Software Engineering - Theoretical Computer Science

Table of contents 

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).

Popular Content within this publication 



Read this Book on Springerlink

Services for this book

New Book Alert

Get alerted on new Springer publications in the subject area of Numerical Analysis.