Computer science from A to Z
A is for Algorithm
Looking up a word in a dictionary, doing an addition, finding the shortest route on a map...
To solve these problems, systematic methods exist that are sure to lead to the desired result: algorithms.
An algorithm is a series of elementary tasks which follow each other in accordance with precise rules, with no room for personal interpretation. “Add together two figures, write the sum at the bottom and the remainder on the left ” can be part of an algorithm, but “cook until medium rare and add salt to taste ” is just a recipe!
An algorithm may be described in French, Chinese or any other language... When translated into a programming language, it becomes a computer program that can be executed by a computer.
To solve some types of problems, such as finding the distribution of work that will keep the duration of a major construction project to a minimum, even the best algorithms require considerable computing time. It is a real challenge to keep producing faster algorithms!
Did you know...?
We do not look for the ace of clubs in a pack of cards in the same way as we look for a word in the dictionary or a web page among billions of others...
The more data there are to process, the more important it is to develop an efficient algorithm, but some problems will remain out of reach for a long time to come.