An algorithm is an unambiguous, step-by-step set of instructions to solve a problem or perform a task.
It's like a recipe, but for computers. Just like a recipe guides you to make a delicious dish, an algorithm guides a computer to accomplish a specific task.
Algorithms provide a systematic way of solving problems and are the building blocks of many applications we use daily.
What is an algorithm?
Examples of everyday algorithms
Although in this course we will be focusing on Algorithms for Computers, we actually use algorithms all the time even when we aren't using computers
Recipe instructions for baking a cake
Instructions for solving a Rubik's Cube
First evacuation procedures
Can you think of any more algorithms we use on a day to day basis?
Which of the following is an example of a human algorithm in a classroom?
What is the purpose of an algorithm?
Algorithm
Thinking Algorithmically
Thinking algorithmically is a systematic and structured approach to problem-solving and decision-making. It involves breaking down complex tasks or issues into smaller, well-defined steps or procedures, much like a recipe for cooking or a set of instructions for assembling a piece of furniture.
This methodical approach enables individuals to solve problems, make decisions, and complete tasks in an organized and efficient manner.
Algorithmic thinking is rooted in the principles of computer science and mathematics, where algorithms are used to solve a wide range of problems. However, its applicability extends well beyond the realm of technology.
What does it mean to think algorithmically?
Advantages of thinking algorithmically
Efficiency
Thinking algorithmically helps you solve problems faster and more effectively. It’s like breaking a big challenge into smaller, easier steps so you can find solutions in an organized and time-saving way.
Consistency
When you use algorithmic thinking, you follow a clear method every time you solve a problem. This makes your results more consistent and reliable, and it helps you avoid mistakes.
Scalability
Algorithmic thinking works even as problems get bigger or more complicated. It gives you a system for tackling tougher challenges without making things feel overwhelming.
One advantage of algorithmic thinking is that it can help improve -solving skills.
Disadvantages of thinking algorithmically
Rigidity
Relying too much on algorithmic thinking can make you inflexible. Sometimes, following a strict set of steps isn’t the best choice — certain problems need creativity and adaptability. Sticking too closely to algorithms can limit new ideas and flexible problem-solving.
Oversimplification
Algorithms often simplify problems to make them easier to solve. While that’s useful, it can also cause you to miss important details or unique situations. Not every problem fits neatly into a step-by-step process.
Bias
If an algorithm is built using biased information, it can lead to unfair or one-sided results. Algorithmic thinking can unintentionally repeat those biases, creating solutions that don’t represent everyone’s experiences or needs.
A disadvantage of algorithmic thinking is that it may oversimplify problems.