¿Cómo uso un algoritmo para resolver problemas de la vida real?
Un algoritmo es solo un conjunto de pasos para resolver un problema. Imagine intentar enseñarle a un adolescente cómo hacer una tarea doméstica como lavar la ropa. Es posible que tenga una lista de verificación como:
- Separe la ropa sucia en una pila ligera y una oscura.
- Ponga toda la ropa ligera en la lavadora.
- Poner en 1 taza de detergente.
- Configure la lavadora en Ciclo completo.
- Haga clic en el botón de encendido.
- Ponga toda la ropa oscura en la lavadora y vuelva a poner en funcionamiento la lavadora.
Ahora, dado que esta es una lista de verificación para una persona pensante, en realidad no es un algoritmo completo. Hay pasos que omitimos. Por ejemplo, ¿qué pasa si no hay ropa en la lavadora después del paso 2? No puedo imaginar que una persona real ejecute el lavado en ese punto.
- ¿Es posible aproximar el comportamiento asintótico de un algoritmo dado su tiempo de ejecución?
- ¿Cuántos números debajo de [matemática] 10 ^ n [/ matemática] hay cuyos dígitos suman [matemática] [/ matemática]?
- ¿Cuáles son algunos algoritmos geniales que se pueden usar para el reconocimiento de objetos y cómo los usamos?
- ¿Cómo imprimir todos los N dígitos (N es un número par) de un número Torn con una complejidad menor que O (N ^ 2)? ¿Qué algoritmo debo usar?
- ¿Cuál es un buen algoritmo para priorizar mensajes DENTRO de su bandeja de entrada?
Sin embargo, lamentablemente, el paso 6 probablemente tenga que ser más explícito para un verdadero adolescente, o puede terminar sin detergente en la lavadora o con las luces que no se han quitado.
Una receta es un buen ejemplo de un algoritmo hecho para que los humanos lo sigan.
También hacemos algunas cosas semi-algorítmicamente todo el tiempo. Cada vez que mi medidor de gas está leyendo bajo, lleno mi tanque.