What are the characteristics of algorithms?


 

Regardless of the use that is given to the algorithms, they all have the following characteristics in common:

1-Start and end: they start from an initial state from which they execute a series of instructions to reach a final state of exit or termination.

2-Accuracy: they must indicate a clear, specific and logical order of instructions for the execution of each step, with no room for ambiguity.

3-Sequence: they must follow a series of ordered, understandable and previously established steps.

4-Complete: they must take into account all the possibilities and presentations of the problem to execute the exact solution.

5-Finite: the number of steps to execute the task must be finite to complete it.

6-Abstract: they represent a guide or model to order processes.

 

How recent are the algorithms?

 


Humans have created, modified, and used algorithms throughout history. More than 4,500 years ago, the Sumerians illustrated on clay tablets an iterative method used to distribute the grain harvest equally among a variable number of men. Approximately in the year 300 BC in Hellenistic Greece, the mathematician Euclid wrote "Elements", a work that would lay the foundations for the geometry of the next millennia, that text includes his famous algorithm to find the greatest common divisor.

In the mid-19th century, Augusta Ada Byron (Ada Lovelace) created what is considered the first algorithm designed to be executed by a machine. Lovelace, laid the foundation for future programming languages ​​(such as functional programming).

 

Algorithm classification criteria



Depending on the criteria used, different classifications are applied to the algorithms. For example, if we use the classification by the system of signs with which the steps to be followed by the algorithm are described, we can differentiate two types, qualitative algorithms: those whose steps are verbal instructions and quantitative algorithms: those that follow calculation instructions. numeric.

If they are classified based on their function, three main groups can be established, such as search algorithms, ordering algorithms, and routing algorithms.

The third criteria that can be used for your ranking is based on your strategy to achieve a result. In this group we can mention probabilistic, heuristic, greedy, escalation and deterministic algorithms.

A detailed analysis of the main types of algorithms is studied during the Computer Engineering degree at the Faculty of Engineering of UDE, more precisely in the course "Analysis of Algorithms".

Comentarios

Entradas populares