La respuesta a lo que preguntaste (pero probablemente no a lo que querías decir) es que puedes resolver problemas que están garantizados para terminar en un tiempo finito. Eso es lo que hacen los algoritmos.
Sin embargo, probablemente quisiste decir por qué deberías estudiar algoritmos, que es un poco diferente. Una razón es comprender mejor cómo se verá afectado su código cuando la cantidad de cosas con las que se enfrenta crezca. Por ejemplo, si tiene un algoritmo O (n ^ 2), sería una suposición razonable que cuando el número de elementos se duplica, la cantidad de tiempo que toma se cuadruplicará.
Una segunda razón para estudiar algoritmos es que proporciona una muy buena manera de pensar sobre problemas muy particulares. Eso significa que puede decirle a otra persona cuál es su solución en pocas palabras en lugar de tener que explicar todo lo que su solución hace para que comprenda. También es probable que sea una solución más eficiente que una ingenua.
Una tercera razón más abstracta es que al pensar un poco más sobre cómo se resolvieron algunos de estos problemas, puede obtener pistas para los problemas que está buscando resolver que podrían no corresponder bien con un algoritmo existente. Afortunadamente, al pensar en áreas que son prohibitivamente lentas, puede encontrar una mejor solución que tome más tiempo razonable. (Esto no ocurre a menudo, pero cuando lo hace, puede ser un verdadero ganador).
- Cómo determinar si un conjunto dado se puede dividir en dos subconjuntos o más de modo que la suma de los elementos en esos subconjuntos sea la misma
- ¿Cómo se implementa el algoritmo HITS?
- ¿Cuál es la diferencia básica entre loop y recursividad en C?
- ¿Qué algoritmos de visión por computadora se utilizan en Protracer para el vuelo de una pelota de golf?
- ¿Cuál sería el mejor enfoque para encontrar la distancia entre dos nodos de un árbol?