Introduction to Computing Science and Programming CMPT 126 (3)
A rigorous introduction to computing science and computer programming, suitable for students who already have substantial programming background. Topics include: fundamental algorithms and problem solving; abstract data types and elementary data structures; basic object-oriented programming and software design; elements of empirical and theoretical algorithmics; computation and computability; specification and program correctness; and history of computing science. Prerequisite: CMPT 120. Students with credit for CMPT 125, 128, 130, 135 or higher may not take CMPT 126 for further credit. Quantitative/Breadth-Science.