Algorithmic thinking
Algorithmic Thinking is a methodical style of problem-solving that suits certain kinds of complex
problems—particularly those that involve large amounts of information or that require several steps
to get from the initial situation to the desired outcome. Problems like these can often be solved (or
at least approximated) using algorithms, which are essentially just sets of instructions for doing
something, often expressed in a way that a computer can understand. Because not all complex
problems can (or should) be solved using algorithms, Algorithmic Thinking also involves determining
when an algorithmic approach is appropriate. The core of Algorithmic Thinking consists of four
principles: Decomposition, Pattern Recognition, Abstraction, and Algorithm Design.