El propósito de un algoritmo es dar un conjunto de reglas por las cuales uno puede resolver un problema. Piense en ello como una guía paso a paso que llevará a cabo una tarea específica o resolverá un cálculo específico si los pasos se siguen en orden.
Un aspecto importante a tener en cuenta al armar un algoritmo es si es genérico o no. Es decir, ¿producirán estos pasos el resultado correcto incluso si los aplicamos a tareas que difieren ligeramente en sus condiciones previas? Para ilustrar la importancia, imagine que le gustaría resolver alguna tarea relacionada con un vector (una lista ordenada de elementos). Empiezas diseñando un algoritmo para realizar esta tarea en un espacio vectorial bidimensional, porque eso es lo que necesitas justo en este momento. Ahora, la diferencia importante entre el algoritmo genérico y el no genérico entra en juego cuando avanza y desea realizar la misma tarea en el espacio vectorial n-dimensional. Un algoritmo genérico aún le proporcionará el resultado correcto, mientras que un algoritmo no genérico obtendrá un resultado incorrecto o ni siquiera tendrá sentido cuando se enfrente a estas condiciones cambiadas.
- ¿Qué es un árbol de búsqueda binario en una estructura de datos?
- Un hombre llega a su oficina en 2 horas y regresa en 3 horas. La ruta a su oficina incluye un sendero inclinado hacia arriba, 8 km y senderos inclinados hacia abajo. Cada vez que viaja hacia arriba, su velocidad es de 60 km / h, mientras que en un plano de 80 km / h, y cubre hacia abajo a una velocidad de 100 km / h. ¿A qué distancia está su oficina?
- ¿Existe un algoritmo para fusionar 2 montones máximos en un montón mínimo con una complejidad de tiempo menor que O (n)?
- Cómo paralelizar un método recursivo en Java
- Cómo resolver http://www.spoj.com/problems/SAMER08A/ usando el algoritmo de Dijkstra