martes, 17 de noviembre de 2015

Diferencias entre Pilas y Colas



Pilas VS Colas:

Pilas: 
Las pilas son muy útiles en varios escenarios de programación. Dos de los más comunes son:

  • Pilas que contienen direcciones de retorno: 
    Si un método llama a otro método "return", el comportamiento LIFO de la pila asegura que la instrucción del segundo método transfiere la ejecución al primer método, y la del primer método transfiere la ejecución al código que sigue al código que llamó al primer método. Como resultado una pila "recuerda" las direcciones de retorno de los métodos llamados.

  • Pilas que contienen todos los parámetros del método llamado y las variables locales: 
    Cuando se llama a un método, la JVM reserva memoria cerca de la dirección de retorno y almacena todos los parámetros del método llamado y las variables locales de ese método. Si el método es un método de ejemplar, uno de los parámetros que almacena en la pila es la referencia del objeto actual.
Normalmente se trabaja con dos tipos de colas: lineal y circular. En ambas colas, la inserción de datos se realiza en el fin de la cola, se mueven hacia adelante y se recuperan/borran del inicio de la cola.



Las colas son muy útiles en varios escenarios de programación, entre los que se encuentran:

  • Temporización de Threads: 
    Una JVM subyacente podrían establecer varias colas para coincidir con diferentes prioridades de los threads. La información del thread se bloquea porque todos los threads con una prioridad dada se almacenan en una cola asociada.

  • Trabajos de impresión: 
    Como una impresora normalmente es más lenta que un ordenador, un sistema operativo maneja los trabajos de impresión en un subsistema de impresión, que inserta esos trabajos de impresión en una cola. El primer trabajo en esa cola se imprime primero, y así sucesivamente.
Ambas son estructuras de almacenamiento, que nos ayudan a guardar información de una manera práctica y sencilla, el uso de las mismas depende del usuario y del tema a ser trabajado.


Vídeos Relacionados:




 REFERENCIAS BIBLIOGRÁFICAS:

Programacion-basica. (2013). "Listas y Pilas en java". recuperado el 17 de noviembre de 2015 de https://sites.google.com/site/programacionbasicajava/listas-pilas-y-colas

No hay comentarios:

Publicar un comentario