Está en la página 1de 14

República Bolivariana De Venezuela

Ministerio Del Poder Popular Para La Educación


Instituto Universitario De Tecnología “Juan Pablo Pérez
Alfonzo”
IUTEPAL PUERTO CABELLO

Integrante: Enmanuel Calvete C.I 24641390

Puerto Cabello, de Diciembre de 2015


First in, first out
“Primero en entrar, primero en salir”, en inglés first in,
first out (FIFO), es un concepto utilizado en estructuras de
datos, contabilidad de costes y teoría de colas. Guarda analogía
con las personas que esperan en una cola y van siendo
atendidas en el orden en que llegaron, es decir, que ‘la primera
persona que entra es la primera persona que sale’.
También se le denomina «primero en llegar, primero en ser
atendido», en inglés first come, first served (FCFS).
En informática, FIFO se utiliza en
estructuras de datos para
implementar colas. La
implementación puede efectuarse
con ayuda de arreglos o vectores, o
bien mediante el uso
de punteros y asignación dinámica
de memoria.
Si se implementa mediante Sea cual sea la opción
vectores, el número máximo de elegida, el número de
elementos que puede elementos que podrá almacenar
almacenar FIFO está limitado al la cola quedará determinado
que se haya establecido en el durante toda la ejecución del
código del programa antes de la programa. Así, el sistema debe
compilación (cola estática) o reservar el tamaño de memoria
durante su ejecución (cola necesario para acoger todos los
pseudoestática o dinámica). datos, sea cual sea el número de
elementos usados.
En algunas aplicaciones, esto supone un problema ya que
puede desconocerse el número de elementos a contener en
la cola. La sencilla solución de reservar más memoria de la
que se supone que se necesitará, puede conducir a un
despilfarro de la memoria (la cola puede que esté llena,
aprovechando toda la memoria reservada; o bien, nunca
terminar de llenarse, ocupando recursos innecesarios en
memoria).
Sin embargo, si se usa asignación dinámica de memoria, el número
máximo no está declarado en tiempo de compilación sino en tiempo de
ejecución, es decir, se reserva memoria a medida que se necesite expandir el
tamaño de la cola (adaptándose al tamaño necesario en cada momento en
función de los elementos que hay en la cola), haciendo un mejor uso de la
memoria disponible.

Uno de los usos de las colas es la exploración ‘en anchura’ de un árbol


binario de búsqueda. Otro uso típico de las colas, es la gestión de descargas
de una aplicación P2P
Un árbol binario de Una red peer-to-peer, red de pares, red
búsqueda también llamados BST entre iguales o red entre pares (P2P, por sus
(acrónimo siglas en inglés) es una red de
del inglés Binary Search Tree) es computadoras en la que todos o algunos
un tipo particular de árbol aspectos funcionan
binario que presenta sin clientes ni servidores fijos, sino una serie
una estructura de datos en forma de nodos que se comportan como iguales
de árbol usada en informática. entre sí. Es decir, actúan simultáneamente
como clientes y servidores respecto a los
demás nodos de la red. Las redes P2P
permiten el intercambio directo de
información, en cualquier formato, entre los
ordenadores interconectados.
La particularidad de una estructura de datos
de cola es el hecho de que sólo podemos
acceder al primer y al último elemento de la
estructura. Así mismo, los elementos sólo se
pueden eliminar por el principio y sólo se
pueden añadir por el final de la cola.

Ejemplos de colas en la vida real serían:


personas comprando en un supermercado,
esperando para entrar a ver un partido de
béisbol, esperando en el cine para ver una
película, una pequeña peluquería, etc. La idea
esencial es que son todos líneas de espera.
En caso de estar Una cola de
vacía, borrar un prioridades es
elemento sería una estructura de
imposible hasta que datos en la que los
no se añade un nuevo elementos se atienden
elemento. A la hora de en el orden indicado por
añadir un elemento una prioridad asociada a
podríamos darle una cada uno. Si varios
mayor importancia a elementos tienen la
unos elementos que a misma prioridad, se
otros (un cargo VIP) y atenderán de modo
para ello se crea un convencional según la
tipo de cola especial posición que ocupen.
que es la cola de
prioridad.
Características generales

Este tipo especial de colas tienen las mismas operaciones que las colas ,
pero con la condición de que los elementos se atienden en orden de
prioridad.
Ejemplos de la vida diaria serían la sala de urgencias de un hospital, ya
que los enfermos se van atendiendo en función de la gravedad de su
enfermedad.
Entendiendo la prioridad como un valor numérico y asignando a altas
prioridades valores pequeños, las colas de prioridad nos permiten añadir
elementos en cualquier orden y recuperarlos de menor a mayor.
Tipos

Colas de prioridades con ordenamiento


ascendente: en ellas los elementos se insertan
de forma arbitraria, pero a la hora de
extraerlos, se extrae el elemento de menor
prioridad.

Colas de prioridades con ordenamiento


descendente: son iguales que la colas de
prioridad con ordenamiento ascendente, pero
al extraer el elemento se extrae el de mayor
prioridad.
Ejemplos
Ejemplos de colas en la vida real serían: personas comprando en un
supermercado, esperando para entrar a ver un partido de béisbol, esperando
en el cine para ver una película, una pequeña peluquería, etc. La idea
esencial es que son todos líneas de espera.

También podría gustarte