This course introduces the student to a broad range of heuristics for solving problems in a range of settings. Emphasis on problem-solving techniques that aid programmers and computer scientists. Heuristics for solving problems ''in the small'' (classical math and word problems), generating potential solutions to ''real-life'' problems encountered in the profession, and problem solving in teams.
Having successfully completed this course, the student will be able to:
- Identify skills and personality traits of successful problem solving.
- Apply standard problem-solving heuristics to aid in problem solving.
- Apply problem-solving techniques to programming activities.
- Apply problem-solving techniques to school and personal interactions.
- Apply pairs and team problem-solving techniques.
- Generate potential solutions to problems with standard heuristics.
- Formulate and successfully communicate the solutions to problems.
Prerequisites: MATH 1205 or MATH 1225 or MATH 1526.
Taught By: Alexey Onufriev