An introduction to the major concepts of algorithm design and problem solving. Emphasis is on algorithm development, analysis, and refinement. Programming strategies and elements of programming also are covered. Various practical applications of problem-solving are demonstrated. Includes formal labs. Prerequisite: Qualifying score on the math placement test (Math ACT equal to or greater than 26) or completion of MATH 110 - Finite Mathematics or STAT 110 - Fundamentals of Statistics or higher. (Students must receive a C grade or better in the qualifying math course to remain enrolled in CS 234.) Grade only. Offered each semester.