Las estructuras de datos son en sí mismas colecciones de datos. Durante la ejecución de cualquier algoritmo dado, usted opera en una cantidad dada de datos, ya sean variables individuales o grandes colecciones.
La respuesta a su pregunta radica en la interacción con estas colecciones. Para cualquiera de ellos, debe poder agregar nuevos elementos y leer los elementos existentes de la colección (como mínimo). La naturaleza de estas inserciones y lecturas hace que ciertos algoritmos sean más fáciles de implementar.
Por ejemplo, la naturaleza LIFO de las pilas facilita una especie de “memoria a corto plazo” que le permite recordar instantáneamente (como en O (1)) qué fue lo último que almacenó en él. Esto facilita ciertos algoritmos de navegación para laberintos, o para emular la recursión (de hecho, ¡la recursión real usa una pila!).
- ¿Cuáles son algunos buenos libros para aprender algoritmos y estructuras de datos usando Java?
- Cómo implementar un algoritmo de equilibrio de carga personalizado aparte del algoritmo Round Robin predeterminado en mi Amazon Elastic Load Balancer usando Java SDK para AWS
- ¿Cuál es la diferencia entre binary y Algoritmo?
- ¿Hay algún recurso donde pueda practicar problemas de programación dinámica según sus tipos?
- ¿Cuál es el algoritmo más complicado por el que has pasado?
Tener la estructura de datos correcta que le permite obtener fácilmente la información que necesita en el momento adecuado, hace que la escritura de algoritmos sea mucho más fácil.