The Black Art of Programming
by Mark McIlroy
Publisher: Blue Sky Technology 2013
Number of pages: 672
This e-book is an introduction to computer programming. It covers the essential information of a Computer Science course. Recommended for beginners and intermediate programmers. Contents: Program Structure; Topics from Computer Science; The Craft of Programming.
Download or read it online for free here:
by Allen Cypher - The MIT Press
Programming by Demonstration is a method that allows users to create programs by demonstrating what the program should do. The book describes 18 implementations of Programming by Demonstration, and discusses the problems for this method.
by Carroll Morgan - Prentice-Hall
Rigorous treatment of most elementary program-development constructs, including iteration, recursion, procedures, parameters, modules and data refinement. Additions include more material on data refinement, recursively defined types, and case studies.
by Jon Bentley - Addison-Wesley Professional
The book focuses on choosing the right algorithms and on showing how to solve problems effectively. Each chapter frames a particular programming task (sorting numbers, creating anagrams, counting the words). Code examples are written in C and C++.
by Karthik Naidu - GitBook
These are engineer's notes on problem solving. They are ideally suited as practice material for coding interviews. Each post has 5 sections: problem statement, examples, algorithm, code, test cases, and a discussion on time-complexity.