Está en la página 1de 1

Análisis y diseño de algoritmos: Implementaciones en

C y Pascal
De Gustavo López, Ismael Jeder, Augusto Vega

El Diccionario de la Real Academia Española indica que un algoritmo es un “conjunto


ordenado y finito de operaciones que permite hallar la solución de un problema”. En
términos sencillos, un algoritmo es una “receta”, o sea, un conjunto de pasos que,
ejecutados de la manera correcta, permite obtener un resultado (en un tiempo acotado).
A menudo, los algoritmos están asociados con las computadoras y los lenguajes de
programación. Sin embargo, se los encuentra en la vida cotidiana, cuando cada uno de
nosotros (racionalmente o por instinto) ejecuta acciones para lograr fines determinados.
Por ejemplo, una taza de café con leche podría prepararse mediante el siguiente
algoritmo:
1. Encender una homalla.
2. Colocar una jarra con leche sobre la hornalla.
3. Esperar a que la leche hierva.
4. Verter un poco de leche en la taza y batir.
5. Colocar café en una taza.
6. Verter más leche en la taza hasta colmarla.
7. Agregar azúcar a gusto.
Si se nos permite enriquecer la definición expuesta, también es necesario que las
operaciones que forman parte del algoritmo estén perfectamente definidas y que no haya
ambigüedad al momento de ejecutarlas. En el segundo paso del ejemplo uno podría
preguntarse en cuál de las hornallas colocar la jarra. Parece algo muy obvio para
nosotros que somos seres humanos, pero no para una computadora, que no es capaz de
razonar ni de sacar conclusiones por cuenta propia.
Un algoritmo es unívoco, lo que implica que, si se ejecuta varias veces el mismo
algoritmo sobre el mismo conjunto de datos de entrada, siempre se obtienen los mismos
datos de salida. Además, el resultado debe generarse en un tiempo finito, Los métodos
que utilizan algoritmos se denominan métodos algorítmicos, en oposición a los que
implican algún juicio o interpretación, que se denominan métodos heurísticos. Los
métodos algorítmicos se pueden implementar en computadoras: sin embargo, los
procesos heurísticos no habían sido convertidos con facilidad en ellas. En los últimos
años, sin embargo, las técnicas de inteligencia artificial hicieron posible la
implementación del proceso heurístico en computadoras.
Gustavo López, Ismael Jeder, Augusto Vega (2009) Análisis y diseño de algoritmos:
Implementaciones en C y Pascal (Alpha Editorial)

También podría gustarte