What is an Algorithm?

Article Details
  • Originally Written By: Brendan McGuigan
  • Revised By: Bott
  • Edited By: L. S. Wynn
  • Last Modified Date: 31 May 2020
  • Copyright Protected:
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
In 2015, Japan recorded 2,310 compensation claims for illnesses and deaths caused by “karoshi,” or overwork.  more...

May 31 ,  1929 :  The Ford Motor Company signed a deal with the USSR.  more...

In its most general sense, an algorithm is any set of detailed instructions which results in a predictable end-state from a known beginning. Algorithms are only as good as the instructions given, however, and the result will be incorrect if the algorithm is not properly defined.

Examples of Algorithms

A common example of an algorithm would be instructions for assembling a model airplane. Given the starting set of a number of marked pieces, one can follow the instructions given to result in a predictable end-state: the completed airplane. Misprints in the instructions, or a failure to properly follow a step, will result in a faulty end product.

A computer program is another pervasive example. Every computer program is simply a series of instructions, which may vary in complexity, and is listed in a specific order, designed to perform a specific task. Mathematics also uses algorithms to solve equations by hand, without the use of a calculator. One last example is the human brain: most conceptions of the human brain define all behavior — from the acquisition of food to falling in love — as the result of a complex algorithm.

Classes of Algorithms

While there is no universally accepted breakdown for the various types of algorithms, there are common classes that algorithms are frequently agreed to belong to. Among these are:

  • Dynamic Programming Algorithms: This class remembers older results and attempts to use this to speed the process of finding new results.
  • Greedy Algorithms: Greedy algorithms attempt not only to find a solution, but to find the ideal solution to any given problem.
  • Brute Force Algorithms: The brute force approach starts at some random point and iterates through every possibility until it finds the solution.
  • Randomized Algorithms: This class includes any algorithm that uses a random number at any point during its process.
  • Branch and Bound Algorithms: Branch and bound algorithms form a tree of subproblems to the primary problem, following each branch until it is either solved or lumped in with another branch.
  • Simple Recursive Algorithms: This type goes for a direct solution immediately, then backtracks to find a simpler solution.
  • Backtracking Algorithms: Backtracking algorithms test for a solution; if a solution is found the algorithm has solved, if not it recurs once and tests again, continuing until a solution is found.
  • Divide and Conquer Algorithms: A divide and conquer algorithm is similar to a branch and bound algorithm, except it uses the backtracking method of recurring while dividing a problem into subproblems.

Serial and Parallel Algorithms

In addition to these general classes, algorithms may also be divided into two primary groups: serial algorithms, which are designed for serial execution, wherein each operation is enacted in a linear order; and parallel algorithms, used with computers running parallel processors, wherein a number of operations are run parallel to each other. Parallel algorithms also exist in the natural world in the case of, for example, genetic mutation over a species.

You might also Like


Discuss this Article

Post 64

Can I get a difference between an algorithm and a class in pictures and explanations please?

Post 62

What are three ways to write algorithms and three types of instruction?

Post 58

What are the criteria someone needs to use in executing a problem in a flowchart or algorithm?

Post 55

I did not realize an algorithm was essentially a flow chart.

Post 54

response 251646: Good example that can be reversed. Some people and animals are tired and need body movement to energize and thus become really tired and sleep well.

Post 53

Isn't religion an algorithm of preferred response?

Post 51

sql statements are algorithms.

Post 50

Example of algorithm:

Are you tired?

Yes: Go to bed

No: Ride a bike

Are you tired?

Yes: Go to bed

No: Ride a bike

Post 46

I am a school girl and need info on an algorithm for using a CD (for my project). Your post was very useful.

Post 45

What is the importance of algorithms?

Post 42

write an algorithm for a program that prompts the user to enter five test scores, calculate the total of the five tests and find the weighted average of each test assuming that each tests weighs 20 percent.

Post 41

Can you give the difference between the brute-force algorithm and the greedy algorithm?

Post 39

Can you give an example of an algorithm please?

Post 37

what is the difference between an algorithm and pseudocode? please explain with examples.

Post 36

I just want to know the steps in creating an algorithm.

Post 34

An algorithm is like a predetermined pattern to be followed for a predetermined result. A common algorithm of a rubik's cube is down, left, up, side. Obviously, it is much more complex to solve the rubik's. There are about 5-6 algorithms to follow. Hope this helps.

Post 32

what is an algorithm? is it related to computer programming?

Post 31

What are properties of an algorithm?

Post 30

What mathematics course do I start learning Algorithms in? sorry for asking but I am currently studying computer networking but I do not have the math skills needed yet. So I haven't got the chance to learn about them.

Post 29

How do you write an algorithm to input the price of a text book and then calculate the price and print the total cost of the book after 15% VAT is added?

Post 28

can you explain algorithms and give examples please?

Post 27

Given a problem (i.e. a question, such as "What is 2+2?" or "What are the prime factors of 1729?") an algorithm is a description of a method for a computer to answer that problem.

Another way to think of it is that some mathematical proofs (e.g. the proof of the Chinese Remainder Theorem) are "constructive"; they give procedures for calculating the values which satisfy the theorem. Such procedures, if they can be expressed to a computer, are in fact algorithms.

Post 25

what are the properties of an algorithm?

Post 24

Why can algorithms be known as steps? It is because i'm doing a science project which i have to devise an algorithm to figure out a rubiks cube. Is it possible? what is it?

Post 23

Big words. Couldn't it be known just as processes?

Post 21

what is an algorithm? is it different from pseudo-code in any way?

Post 20

I want to know some basic tips how to learn brute force algorithm for biology and something about time complexity. Can any one answer this.

Post 19

I want to learn about algorithms. Can you give detailed information of algorithms?

Post 18

is algorithm really a challenage for me as a programmer? is algorithm really that hard to understand?

Post 16

Can you please tell me which is the course for learning cryptography?? im a commerce graduate and how do i start learning algorithms?? base content for a beginner like me. Please advise.

Post 14

please give an example of an algorithm

Post 12

What are the principles of algorithm designs?

Post 10

Why are non-linear algorithms superior to linear ones when working with self-learning optimization?

Post 9

can you give an example of algorithm?

Post 4

Can you give an example of algorithm?

Post 3

what is/are the criteria of an algorithm??

Post 2

Can you give an example of an algorithm please?

Post your comments

Post Anonymously


forgot password?