Computational Thinking & Problem Solving
Computational Thinking
- A "computer person" = skilled in computational/algorithmic thinking.
- Computational thinking: methodical, step-by-step reasoning \Rightarrow define terms clearly so others can follow.
- Core cycle: Input \rightarrow Algorithm (stepwise) \rightarrow Output.
Computer Science vs. Programming
- Computer science = discipline of problem solving.
- Programming = tool to implement solutions, not the essence of CS.
Applicability
- Concepts apply across domains: software, hardware, AI, ML, data science, etc.
- CS provides a mental model + practical skills transferable to other fields.
Problem-Solving Model
- Any problem: identify inputs, design algorithm (black box for now), obtain outputs.
- Focus on how to transform inputs to desired outputs via precise steps (to be detailed later).