Our society’s dependence on computers is ever-growing. As the nature of industry, education, and lifestyles in this emerging world takes form, there has been an increased emphasis and need to understand computers’ role as problem-solving machines. Computer science – that is, the study of algorithms and their implementations – remains one of the key fields upon which this exciting future will be constructed.