By now you should be aware that you can use algorithms to solve many problems in computing.
An algorithm is a set of instructions that when carried out by the computer will solve the task.
You can often use many different algorithms to solve the same task. But some algorithms are faster and more efficient than others. Unfortunately, the more efficient ones tend to be more complicated to code.
So there is a balance to be struck between efficiency and complexity.
We shall discuss this topic in this section.