Class Number: 1742
Introduction to the intellectual and software tools used to create and study algorithms: formal and informal problem specification; problem solving and algorithm design techniques; reliability, formal verification, testing, and peer code review techniques; program clarity, complexity and efficiency; functional and imperative paradigms; associated programming skills. Students must attend a one-hour weekly lab. Labs will be sectioned by course professor. ; Prerequisite(s): May not be taken by students who have taken any one of HC: CMSC 104, CMSC 107; BMC: CMSC 110, except by instructor consent; Enrollment Limit: 24; Lottery Preference(s):; 1) Sophomores; 2) Senior Scientific Computing concentrators; 3) Junior CS minors, Junior Scientific Computing concentrators, and Junior CS concentrators; 4) Others Natural Science, Quantitative, C: Physical and Natural Processes (; Hav: NA, QU, C)