SlideShare a Scribd company logo
1 of 13
UNIVERSIDAD TECNOLOGICA
ISRAEL
FACULTAD DE SISTEMAS

COLA INFORMARICA
MAYRA COLLAHUAZO
DAVID MORENO

LENGUAJE Y ANÁLISIS 1
COLAS
Es una lista lineal de elementos en la que las operaciones de
insertar y eliminar se realizan en diferentes extremos de la
cola.
Trabajan con filosofía FIFO ( First In - First out).

                          Ejemplos:

Cola de automóviles esperando servicio en una gasolinera
Cola de clientes en una ventanilla del banco para pagar un
servicio
Cola de programas en espera de ser ejecutados por una
computadora.
TIPOS DE COLAS

 Cola simple: Estructura lineal donde los elementos salen en el mismo
  orden en que llegan.

 Cola circular: Representación lógica de una cola simple en un arreglo.

 Cola de Prioridades: Estructura lineal en la cual los elementos se
  insertan en cualquier posición de la cola y se remueven solamente por
  el frente.

 Cola Doble (Bicola): Estructura lineal en la que los elementos se
  pueden añadir o quitar por cualquier extremo de la cola (cola
  bidireccional).
Operaciones básicas en Colas Simples
Insertar.- Almacena al final de la cola el elemento que se
  recibe como parámetro.
Eliminar.- Saca de la cola el elemento que se encuentra al
  frente.
Vacía.- Regresa un valor booleano indicando si la cola tiene o
 no elementos (true – si la cola esta vacía, false – si la cola
 tiene al menos un elemento).
Llena.- Regresa un valor booleano indicando si la cola tiene
  espacio disponible para insertar nuevos elementos ( true – si
  esta llena y false si existen espacios disponibles).
Operaciones:               Estado de la cola

                            Inicio: Cola Vacía

1.- Insertar A         A


2.- Insertar B         A         B


3.- Insertar C         A         B             C


4.- Remover Elemento   B         C


5.- Insertar D
                       B         C         D

6.- Remover Elemento
                       C         D
Implementación de Colas
         Arreglo
            con frente fijo.
            con frente movible.
            circular.
         Listas ligadas
Representación usando arreglos
Las colas pueden ser representadas en arreglos
de una dimensión (vector) manteniendo dos
variables que indiquen el FRENTE y FINAL
de los elementos de la cola.
            0      1   2   3    4      5

            A      F   S   D    Z




          Frente               Final
   Cuando la cola esta vacía las variables frente y final son
    nulos y no es posible remover elementos.

   Cuando la cola esta llena ( frente = 0 y final = n-1) no es
    posible insertar elementos nuevos a la cola.

   Cuando se remueven elementos el frente puede
    incrementarse para apuntar al siguiente elemento de la
    cola (implementación con frente móvil) o los elementos
    en la cola pueden desplazarse una posición adelante
    (implementación con frente fijo)

   Recuperación de espacio: Cuando no hay espacios libres al
    final del arreglo los elementos pueden ser desplazados
    para desocupar posiciones en un extremo del arreglo o se
    puede manejar una estructura circular.
Suponer que usamos un arreglo de 5 posiciones. Usando la
representación de frente fijo y frente movible.

                     Frente           A     B     C


                                          Final

                        Al remover un elemento:
   Frente       Final                                 Frente          Final


            B   C                                          B      C



       Frente fijo                                             Frente movible
Frente           Final                   Frente           Final


     B       C                                B       C




                         Insertar elemento D
 Frente             Final                 Frente             Final


         B   C      D                             B   C       D
Insertar elemento E
 Frente                Final                Frente                  Final


       B       C   D       E                       B    C    D          E



                               Insertar elemento F
Frente                     Final          Frente                Final


   B       C       D   E       F           B   C       D    E       F




Insertar elemento G                                Cola llena!!!!
Frente            Final

                                     Cola
Cola Circular                        inicial                B C      D


                                                            Frente        Final
  Es una representación lógica
    de la cola en un arreglo.      Remover
 El frente y final son movibles.                              C   D

 Cuando el frente o final llegan                             Frente               Final
   al extremo se regresan a la
                                   Insertar E
 primera posición del arreglo.
                                                              C       D    E

                                                Final             Frente

                                   Insertar F
                                                        F      C D        E
Representación de colas
 Usando memoria estática: arreglos con tamaño fijo y frente fijo o
movible o representación circular.
                                                   Final



           Frente         B        C   D   E        F


                           0       1   2   3        4

 Usando memoria dinámica: Listas ligadas.
                                                               Final


    B               C          D               E           F

 Frente

More Related Content

What's hot

Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 
Ordenamiento de Archivos en Java
Ordenamiento de Archivos en JavaOrdenamiento de Archivos en Java
Ordenamiento de Archivos en JavaErick Barzallo
 
The Lambda Calculus and The JavaScript
The Lambda Calculus and The JavaScriptThe Lambda Calculus and The JavaScript
The Lambda Calculus and The JavaScriptNorman Richards
 
Data structure singly linked list programs VTU Exams
Data structure singly linked list programs VTU ExamsData structure singly linked list programs VTU Exams
Data structure singly linked list programs VTU ExamsiCreateWorld
 
Cohesion and coupling in software design
Cohesion and coupling in software designCohesion and coupling in software design
Cohesion and coupling in software designAhmed Saad Khames
 
Transaction Management
Transaction Management Transaction Management
Transaction Management Visakh V
 
Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction DiagramNiloy Rocker
 
Transaction management DBMS
Transaction  management DBMSTransaction  management DBMS
Transaction management DBMSMegha Patel
 
Threaded Binary Tree
Threaded Binary TreeThreaded Binary Tree
Threaded Binary Treekhabbab_h
 

What's hot (20)

Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Shell exposición
Shell exposiciónShell exposición
Shell exposición
 
Linked list
Linked listLinked list
Linked list
 
Component Diagram
Component DiagramComponent Diagram
Component Diagram
 
Ordenamiento de Archivos en Java
Ordenamiento de Archivos en JavaOrdenamiento de Archivos en Java
Ordenamiento de Archivos en Java
 
Data structures
Data structuresData structures
Data structures
 
The Lambda Calculus and The JavaScript
The Lambda Calculus and The JavaScriptThe Lambda Calculus and The JavaScript
The Lambda Calculus and The JavaScript
 
Data structure singly linked list programs VTU Exams
Data structure singly linked list programs VTU ExamsData structure singly linked list programs VTU Exams
Data structure singly linked list programs VTU Exams
 
Cohesion and coupling in software design
Cohesion and coupling in software designCohesion and coupling in software design
Cohesion and coupling in software design
 
Functional dependency
Functional dependencyFunctional dependency
Functional dependency
 
Algoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externoAlgoritmos de Ordenamiento externo
Algoritmos de Ordenamiento externo
 
Ordenamiento shell
Ordenamiento shellOrdenamiento shell
Ordenamiento shell
 
Lista, pilas y colas
Lista, pilas y colasLista, pilas y colas
Lista, pilas y colas
 
Transaction Management
Transaction Management Transaction Management
Transaction Management
 
Algoritmos de Ordenamiento Externo.
Algoritmos de Ordenamiento Externo.Algoritmos de Ordenamiento Externo.
Algoritmos de Ordenamiento Externo.
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Slide 4 Interaction Diagram
Slide 4 Interaction DiagramSlide 4 Interaction Diagram
Slide 4 Interaction Diagram
 
Transaction management DBMS
Transaction  management DBMSTransaction  management DBMS
Transaction management DBMS
 
AVL Tree
AVL TreeAVL Tree
AVL Tree
 
Threaded Binary Tree
Threaded Binary TreeThreaded Binary Tree
Threaded Binary Tree
 

More from David A. Moreno A.

More from David A. Moreno A. (10)

Redes Informaticas
Redes InformaticasRedes Informaticas
Redes Informaticas
 
Funcion de mysql que valida la cedula
Funcion de mysql que valida la cedulaFuncion de mysql que valida la cedula
Funcion de mysql que valida la cedula
 
Resumen completo destinado al exito
Resumen completo destinado al exitoResumen completo destinado al exito
Resumen completo destinado al exito
 
Resumen Con mi corazon en yambo
Resumen Con mi corazon en yamboResumen Con mi corazon en yambo
Resumen Con mi corazon en yambo
 
Agenda 21
Agenda 21 Agenda 21
Agenda 21
 
PROGRAMACION EN Php
PROGRAMACION EN Php PROGRAMACION EN Php
PROGRAMACION EN Php
 
Manual de geogebra
Manual de geogebraManual de geogebra
Manual de geogebra
 
Responsabilidad social
Responsabilidad socialResponsabilidad social
Responsabilidad social
 
Trabajo2
Trabajo2Trabajo2
Trabajo2
 
Origen y Posibilidad del conocimiento
Origen y Posibilidad del conocimientoOrigen y Posibilidad del conocimiento
Origen y Posibilidad del conocimiento
 

Colas informaticas

  • 1. UNIVERSIDAD TECNOLOGICA ISRAEL FACULTAD DE SISTEMAS COLA INFORMARICA MAYRA COLLAHUAZO DAVID MORENO LENGUAJE Y ANÁLISIS 1
  • 2. COLAS Es una lista lineal de elementos en la que las operaciones de insertar y eliminar se realizan en diferentes extremos de la cola. Trabajan con filosofía FIFO ( First In - First out). Ejemplos: Cola de automóviles esperando servicio en una gasolinera Cola de clientes en una ventanilla del banco para pagar un servicio Cola de programas en espera de ser ejecutados por una computadora.
  • 3. TIPOS DE COLAS  Cola simple: Estructura lineal donde los elementos salen en el mismo orden en que llegan.  Cola circular: Representación lógica de una cola simple en un arreglo.  Cola de Prioridades: Estructura lineal en la cual los elementos se insertan en cualquier posición de la cola y se remueven solamente por el frente.  Cola Doble (Bicola): Estructura lineal en la que los elementos se pueden añadir o quitar por cualquier extremo de la cola (cola bidireccional).
  • 4. Operaciones básicas en Colas Simples Insertar.- Almacena al final de la cola el elemento que se recibe como parámetro. Eliminar.- Saca de la cola el elemento que se encuentra al frente. Vacía.- Regresa un valor booleano indicando si la cola tiene o no elementos (true – si la cola esta vacía, false – si la cola tiene al menos un elemento). Llena.- Regresa un valor booleano indicando si la cola tiene espacio disponible para insertar nuevos elementos ( true – si esta llena y false si existen espacios disponibles).
  • 5. Operaciones: Estado de la cola Inicio: Cola Vacía 1.- Insertar A A 2.- Insertar B A B 3.- Insertar C A B C 4.- Remover Elemento B C 5.- Insertar D B C D 6.- Remover Elemento C D
  • 6. Implementación de Colas  Arreglo  con frente fijo.  con frente movible.  circular.  Listas ligadas
  • 7. Representación usando arreglos Las colas pueden ser representadas en arreglos de una dimensión (vector) manteniendo dos variables que indiquen el FRENTE y FINAL de los elementos de la cola. 0 1 2 3 4 5 A F S D Z Frente Final
  • 8. Cuando la cola esta vacía las variables frente y final son nulos y no es posible remover elementos.  Cuando la cola esta llena ( frente = 0 y final = n-1) no es posible insertar elementos nuevos a la cola.  Cuando se remueven elementos el frente puede incrementarse para apuntar al siguiente elemento de la cola (implementación con frente móvil) o los elementos en la cola pueden desplazarse una posición adelante (implementación con frente fijo)  Recuperación de espacio: Cuando no hay espacios libres al final del arreglo los elementos pueden ser desplazados para desocupar posiciones en un extremo del arreglo o se puede manejar una estructura circular.
  • 9. Suponer que usamos un arreglo de 5 posiciones. Usando la representación de frente fijo y frente movible. Frente A B C Final Al remover un elemento: Frente Final Frente Final B C B C Frente fijo Frente movible
  • 10. Frente Final Frente Final B C B C Insertar elemento D Frente Final Frente Final B C D B C D
  • 11. Insertar elemento E Frente Final Frente Final B C D E B C D E Insertar elemento F Frente Final Frente Final B C D E F B C D E F Insertar elemento G Cola llena!!!!
  • 12. Frente Final Cola Cola Circular inicial B C D Frente Final Es una representación lógica de la cola en un arreglo. Remover El frente y final son movibles. C D Cuando el frente o final llegan Frente Final al extremo se regresan a la Insertar E primera posición del arreglo. C D E Final Frente Insertar F F C D E
  • 13. Representación de colas  Usando memoria estática: arreglos con tamaño fijo y frente fijo o movible o representación circular. Final Frente B C D E F 0 1 2 3 4  Usando memoria dinámica: Listas ligadas. Final B C D E F Frente