What is a "computer algorithm"?
To make a computer do anything, you have to write a computer program. To write a computer program, you have to tell the computer, step by step, exactly what you want it to do. The computer then "executes" the program, following each step mechanically, to accomplish the end goal.
When you are telling the computer what to do, you also get to choose how it's going to do it. That's where computer algorithms come in. The algorithm is the basic technique used to get the job done. Let's follow an example to help get an understanding of the algorithm concept.
Let's say that you have a friend arriving at the airport, and your friend needs to get from the airport to your house. Here are four different algorithms that you might give your friend for getting to your home:
- The taxi algorithm:
- Go to the taxi stand.
- Get in a taxi.
- Give the driver my address.
- The call-me algorithm:
- When your plane arrives, call my cell phone.
- Meet me outside baggage claim.
- The rent-a-car algorithm:
- Take the shuttle to the rental car place.
- Rent a car.
- Follow the directions to get to my house.
- The bus algorithm:
- Outside baggage claim, catch bus number 70.
- Transfer to bus 14 on Main Street.
- Get off on Elm street.
- Walk two blocks north to my house.
In computer programming, there are often many different ways -- algorithms -- to accomplish any given task. Each algorithm has advantages and disadvantages in different situations. Sorting is one place where a lot of research has been done, because computers spend a lot of time sorting lists. Here are five different algorithms that are used in sorting:
- Bin sort
- Merge sort
- Bubble sort
- Shell sort
- Quicksort
Here are some interesting links:
