ABSTRACT

It’s not that I am so smart, it’s just that I stay with problems longer.

—ALBERT EINSTEIN

It has been said that computer scientists are modern-day problem solvers. So it is impossible to understand computational thinking without understanding the problem-solving skills and techniques of the computer scientist. Of course, problem solving did not begin with computers, nor are computers essential to solve many problems; and, of course, the problemsolving skills common to computer scientists are useful far outside the world of computers.