TIPOS DE ALGORÌTMOS

Se ha clasificado a los algoritmos de diversas formas, de acuerdo con algunos de sus atributos. Por ejemplo:

A) Según el **sistema de signos**con el que describen los pasos a seguir, se reconocen:

–**Algoritmos cualitativos**: cuando se hace a través de palabras, es decir, las instrucciones son verbales. Sucede, por ejemplo, con recetas de cocina.

–**Algoritmos cuantitativos**: cuando se hace a través de cálculos numéricos. Se puede hacer un algoritmo, por ejemplo, para obtener la raíz cuadrada de un número.

B) Según su **función**, los algoritmos pueden ser:

–**Algoritmos de ordenamiento**: secuencian los elementos que ingresan a partir de un cierto orden, en general, según un orden numérico o léxico.

–**Algoritmos** **de búsqueda**: al contrario de realizar operaciones o secuenciar elementos, se dedica a encontrar dentro de una lista que ingresa, uno o varios elementos en particular que cumplan con el conjunto de condiciones dadas.

–**Algoritmos** **de encaminamiento**: deciden de qué modo se deberá transmitir algo que llega, y cómo seguirá un conjunto de pasos encadenados. Se dividen fundamentalmente entre **adaptativos** y **estáticos**, los primeros con cierta capacidad de aprendizaje y ajuste a la circunstancia, mientras que los segundos funcionan mecánicamente, siempre del mismo modo. Es importante decir que los algoritmos de encaminamiento cuentan con una **propia subdivisión**, según el camino que se toma para que la transmisión llegue de manera efectiva (ejemplos de estos tipos son: por el camino más corto, de manera óptima, basado en el flujo, etc.).

C) También los algoritmos han sido clasificados según la **estrategia** que se utiliza para llegar al resultado. Veamos algunos ejemplos:

–**Algoritmos** **probabilísticos**: no se puede estar seguro de la exactitud de la respuesta que darán. Se agrupan en distintos subtipos, pero con esa premisa: o bien presentan soluciones aproximadas del problema, o bien presentan soluciones que pueden ser correctas pero también erróneas.

–**Algoritmo cotidiano**: es el que se da en la vida común de las personas, no se aplica en sistemas informáticos ni en nada ajeno al día a día. Muchas de las decisiones que se toman desde que uno se despierta por la mañana pertenecen a este grupo.

–**Algoritmo heurístico**: abandona alguno de los objetivos como recurso para terminar llegando a la solución. En general, son utilizados cuando no existe una solución mediante las vías tradicionales.

–**Algoritmo** **de escalada**: se comienza con una solución insatisfactoria (que no cumple la entrada y la salida), y se la va modificando aproximándose a lo que se busca. En algún momento, estaremos cerca de (o llegaremos a) la solución correcta.

–**Algoritmo voraz**: Con la idea de llegar a una solución óptima definitiva, elige analizar cada paso como único y elegir la solución óptima para ese paso.

–**Algoritmo determinista**: es completamente lineal (cada paso tiene un paso sucesor y un paso predecesor) y por lo tanto predictivo, si se conocen sus entradas y su forma de proceder. El algoritmo de Euclides, que permite averiguar el máximo común divisor entre dos números, responde a este tipo. Se distinguen de los **no deterministas**, donde el algoritmo tiene un comportamiento en forma de árbol.

Fuente: https://www.tiposde.org/ciencias-exactas/843-tipos-de-algoritmos/#ixzz5VZ9CKXsy