By the time students reach the end of a course on algorithm design, they are starting to ask questions about what computers can and cannot do: Is there a polynomial-time algorithm for every computational problem? Can every problem be solved using dynamic programming? Can every problem be formulated as a graph problem? What is a Computer and What Can It Do? takes advantage of the students' curiosity by answering their questions in the context in which they naturally arose: algorithms. What is a Computer and What Can It Do? is intended to serve as the primary textbook in an undergraduate course...
By the time students reach the end of a course on algorithm design, they are starting to ask questions about what computers can and cannot do: Is ther...