# What is Algorithm

The following article guides you everything about the algorithm, computer algorithm, its classifications, and types.

Many of the modern computers are performing very complex tasks. To complete the Tasks it would take a long time to a group of people. These tasks consist of procedures that are well defined and that many people refer to as algorithms. If you are reading this article, you probably are looking to understand what an algorithm is exactly. Well, for starters, they help the computers to do all the work that they do for us.

What is an algorithm?

To understand this, let us have a look at how you use your computer on a daily basis. For instance, you get up and work on reports and once you finished writing the paragraphs, you do a spell check to correct any errors that you may have made. You then open up an excel application and start on some financial projects that you have to get done for work or your very own to see if you can get that car loan that you want. You also go online to research on the kind of car that you would want to get.

You may not be thinking about this consciously but to perform all these operations, a computer needs to make use of various algorithms. An algorithm is a procedure that is well defined and that enables a computer to solve problems. Another way to explain an algorithm is to refer to it as an unambiguous sequence of instructions. The term unambiguous is used to mean every time you give a computer a certain task to carry out, it will perform it in the same and exact way it did before without any alteration whatsoever and giving the same result.

Classification of algorithms

There are many types of algorithms. To make it easier for us to understand them, they are classified differently according to purpose, implementation, design, and complexity.

Classification by purpose

Each and every algorithm that is created is meant to achieve a particular goal. For instance, a quick sort algorithm is meant to sort data provided in either an ascending or descending manner. However, the numbers of goals that an algorithm can have are numerous and are only limited by a person’s imagination.

Classification by implementation

An algorithm can achieve its purpose by using different principle. Either iterative or recursive, procedural or logical, parallel or serial, non-deterministic or deterministic and many other principles. You may find that two algorithms created by different people make use of different algorithms but achieve the same purpose.

A design paradigm is a class of problems that need a particular type of algorithm to solve. The algorithms under this classification are such as;-

• Dynamic programming
• Linear programming
• Reduction
• Greedy method
• Using graphs

Classification by complexity

There are algorithms that complete in exponential time, others in linear time.

After this, you should have a very clear understanding of what algorithms are and how they work. Next time you find your peers talking about it, you can jump in and share some of your knowledge too.

### WHAT IS COMPUTER ALGORITHM?

While computers have been around for quite some time, most of the users have never understood how they function or even how the programming is done to allow the computers to give you results every time when you input commands like typing. One of the most important parts of computer programming is the algorithm. It is also among the least understood parts of computers. Here is a simple revelation of what “Algorithm” actually means and its role in the computing world.

Simply put, an algorithm is a step by step procedure that allows the computer to make calculations, process data and also for automated reasoning. If the computer is to execute your requests and offer you a valuable and true end result, then the computer has to follow a mechanical step by step procedure that is input in the program. This is what is known as the algorithm.

Think of it this way. For a computer to be able to execute a certain program, the program has to have a set by step criteria the computer can use to get to the final result. For instance, in the said program, one of the steps would be to switch on the program. In simple terms, an algorithm in computing is the stages that are taken in programming that form the path that the computer follows. To get the idea, take calling for a taxi for instance. The algorithm for this would be to wake up, prepare, leave your house and lastly wait at the taxi stand. If you were to skip any of these steps then your result would not be what you want. This is the same thing with a computer algorithm.

There are a variety of types of algorithms all of which are designed to get different results and carry out different tasks.

1. Dynamic programming algorithms.

These are the clever algorithms and are able to remember older results. They use this ability to make finding new results easier and faster. Of course, the new results have to be in one way or the other be related to the previous results.

2. Greedy algorithms

These are designed to find the ideal solution to any given problem. Note that these not only find results but the ideal results.

3. Brute force algorithms

These are referred to as brute force because they start at a random point and blast their way around until they are able to come with the desired results.

4. Randomized algorithms

There are a variety of algorithms that can be used in this case. As long as the algorithm uses a random number in its process at any point, then it falls into this category.

5. Branch and bound algorithms

These form sub problems to the main problems and this format are followed until a result is achieved or the branch is integrated to another branch of sub problems. This recurs until a result for the whole problem is achieved.

These are just a few of the algorithms that are constantly used in programming. The instances in which they can be used differently but they are all designed to offer the computer a path to follow.