SlideShare una empresa de Scribd logo
Prof. Ing. Zamantha González Díaz   Mayo, 2008
Los datos físicos se encuentran asociados a un mecanismo
                    de datos, que controla la forma en la que la información
                    puede ser accedida por los programas, existen principalmente
                    cuatro tipos de estos mecanismos.



                                            Que son :


                            Las pilas                       Las colas


                           Las listas                       Los árboles



Prof. Ing. Zamantha González Díaz                                          Mayo, 2008
Cada uno de los métodos mencionados con anterioridad
                   proporciona una solución a cada tipo de problema.
                   Cada uno un dispositivo que realiza una operación de
                                       º
                   almacenamiento y de recuperación de los datos dados.



                                     Todos ellos tienen
                                     dos elementos en
                                     común, como es :

                       El almacenamiento           La recuperación
                            de datos                 de datos




Prof. Ing. Zamantha González Díaz                                    Mayo, 2008
Prof. Ing. Zamantha González Díaz   Mayo, 2008
CONCEPTO DE LISTA
                         Es un conjunto de nodos cuyas propiedades estructurales
                incluyen solo las posiciones lineales (unidimensionales) para ella se
                definen operaciones como las siguientes:

                .- Tener acceso a un nodo
                .- Insertar y eliminar un nodo en la lista
                .- combinar dos o mas listas en una
                .- Dividir una lista en dos o mas listas
                .- Determinar la cantidad de nodos en la lista
                .- Ordenar la lista de acuerdo a un criterio
                .- buscar un elemento bajo una condición.




Prof. Ing. Zamantha González Díaz                                            Mayo, 2008
primero

                                    PILAS
                                    Es un conjunto dinámico que
                                    obedece el orden lifo

                                    Las pilas es en las que todas las
                                    inserciones y extracciones de
                                    elementos se realizan por un solo
                                    extremo, llamado el tope de la
                                    pila.


                 ultimo




Prof. Ing. Zamantha González Díaz                                 Mayo, 2008
LAS SIMPLEMENTE ENLAZADAS

                           Contienen un enlace al elemento siguiente, las
                   doblemente enlazadas tanto al siguiente elemento como al
                   elemento anterior del la lista.


                            Una lista simplemente enlazada necesita que cada
                   elemento contenga un enlace con el siguiente elemento, cada
                   elemento consiste en una estructura de campos de
                   información a punteros de enlace.




Prof. Ing. Zamantha González Díaz                                         Mayo, 2008
LISTAS DOBLEMENTE ENLAZADAS.

                            Las listas doblemente enlazadas consisten en datos y
                  enlaces tanto al elemento siguiente como al elemento anterior.
                  Con lo que se consiguen dos grandes ventajas, primero la lista
                  se puede leer en cualquier dirección, la segunda es que se
                  pueden leer los enlaces hacia delante como hacia atrás, con lo
                  que si un enlace resulta no valido se puede reconstruir
                  utilizando el otro enlace.




Prof. Ing. Zamantha González Díaz                                           Mayo, 2008
LISTAS CIRCULARES

                           Las listas son estructuras muy ricas y variadas. Hemos visto
                 las más simples; las listas lineales. Veamos ahora otros tipos de listas,
                 similares a las ya estudiadas; las listas circulares. Una lista lineal
                 enlazada circularmente, o simplemente una lista circular, es una lista en
                 la que el puntero siguiente al "último" elemento apunta hacia el primer
                 elemento o nodo. En estas listas no existen ni primero ni últimos
                 elementos, aunque se debe elegir obligatoriamente un puntero para
                 referenciar la lista.

                 Esta lista presenta la gran ventaja de que cada nodo en una lista
                 circular es accesible evitando caer en un bucle infinito.




Prof. Ing. Zamantha González Díaz                                                    Mayo, 2008
EJEMPLO:
                    Las listas circulares tienen la característica de que el
                    ultimo elemento de la misma apunta al primero. en la
                    siguiente figura se mostrara un ejemplo de una lista
                    circular:




                  las operaciones en listas circulares son similares a las operaciones
                  en listas lineales , por lo tanto no se volverá a tratar cada una de
                  ellas.
                  En el caso de la operación de recorrido de las listas circulares , es
                  necesario que se debe aclarar que se debe considerar algún criterio
                  para detectar cuando se han visitado todos los nodos para evitar
                  caer en ciclos infinitos.


Prof. Ing. Zamantha González Díaz                                               Mayo, 2008
PILAS
                    Estructura de datos en la que los elementos se añaden y
                    quitan solo por un extremo.

                    Una pila es lo contrario de una cola, ya que su acceso es de
                    tipo LIFO, el último que entra es el primero que sale.

                     Imaginar un montón de libros unos encima de otros y que
                    para acceder al segundo por arriba primero es necesario
                    coger el primero, su utilización principal es para el software
                    de sistemas, compiladores, intérpretes.




Prof. Ing. Zamantha González Díaz                                            Mayo, 2008
ESPECIFICACIÓN FORMAL DEL TAD-PILA

                 Para definir el tipo de datos abstracto (TAD) pilas, no es
                 suficiente la estructura lógica. Debemos definir el conjunto
                 de operaciones que permita al usuario acceder y manipular
                 los elementos almacenados en una pila. Como las pilas es
                 una estructura dinámica, cambia conforme se añaden y
                 quitan elementos en esta.




Prof. Ing. Zamantha González Díaz                                      Mayo, 2008
Prof. Ing. Zamantha González Díaz   Mayo, 2008
IMPLEMENTACION DE PILAS CON ARREGLOS

                  Una pilas es una colección ordenada de objetos. En C,
                  arreglos permite almacenar colecciones ordenadas. Las
                  desventajas de implementar una pila mediante un
                  arreglo es que esta última es de tamaño fijo, mientras
                  que las pilas son de tamaño dinámico.
                   OPERACIONES DE UNA PILA

                   Las operaciones básicas de una pila son push (empuja,
                   meter) y pop (sacar)

                   _      Push: añade un nuevo elemento
                   _      Pop: elimina un nuevo elemento


Prof. Ing. Zamantha González Díaz                                          Mayo, 2008
•Otra operaciones usualmente incluidas es el tipo de
                  datos adstrato pila son:
                  _      isEmpty (esta vacía): verifica si la pila es
                  esta vacía
                  _      IsFull (esta Llena): verifica si la pila esta
                  llena
                                                   Ejemplo



                                                    1                 4

                                           1        1        1        1         1

                                4          4        4        4        4         4

                              push(4)   push(1)   push(1)   pop()   push(4)   pop()




Prof. Ing. Zamantha González Díaz                                                     Mayo, 2008
•Pila_Vacia: Consultar si la pila está vacía
                 •Pila_Llena: Consultar si la pila está llena
                 •Consultar_Pila: Consultar el contenido de la cima de la pila sin

                 sacar el elemento de la misma
                 El carácter dinámico de la pila se debe a que el tamaño de la
                 pila es variable, independientemente de la implementación.


                                                                     Crea una pila
                                                              inicializándola como una
                                                                       pila vacía




Prof. Ing. Zamantha González Díaz                                              Mayo, 2008
Push: inserta un elemento
                                      en el top de la pila




                                    Cada elemento al ser insertado
                                    ocupar siempre el top en la pila;
                                    12 en la imagen anterior y 15 en
                                    esta imagen.




Prof. Ing. Zamantha González Díaz                           Mayo, 2008
Los elementos han sido
                                    insetados en este orden:
                                    12, 15, 99, 1, 5, 33, 421, 53, 27,
                                    82, 641, 66, 31, 41, 51
                                    dado que el ultimo elemento fue
                                    el 51 es el que ocupa el top en la
                                    pila


                                    Una característica de las pilas es
                                    que son estructuras LIFO(last
                                    input , first output), es decir el
                                    ultimo en entrar sera el primero
                                    en salir




Prof. Ing. Zamantha González Díaz                            Mayo, 2008
VARIABLES DINÁMICAS.

                     Existen una gran variedad de aplicaciones en las que no es
                   posible conocer a priori la dimensión de los datos que serán
                   necesarios, por lo que en dichos casos es necesario utilizar tipos
                   de datos DINÁMICOS. El inconveniente es que, muy
                   posiblemente, se ocupará memoria que puede ser necesaria para
                   otras variables. Las estructuras dinámicas se caracterizan porque
                   la reserva de memoria se realiza durante la ejecución del
                   programa pudiendo reservar y liberar posiciones de memoria
                   según sea necesario durante la ejecución del mismo
                                                    .




Prof. Ing. Zamantha González Díaz                                            Mayo, 2008
DIRECCIONES DE MEMORIA:

                           La memoria interna del ordenador se organiza
                  mediante celdas numeradas o direccionadas consecutivamente.
                  Cada dato almacenado ocupará una de estas celdas (conjunto
                  de bytes adyacentes). El número de bytes que se requieren para
                  almacenar un dato depende de su tipo, así como del procesador
                  de la máquina.




Prof. Ing. Zamantha González Díaz                                         Mayo, 2008
La declaración de un determinado dato indica, entre otras
                   cosas, que el compilador reservará automáticamente
                   memoria para almacenar dicho dato. El dato podrá ser
                   accedido si se conoce su localización o dirección de
                   memoria, ( nota ). La dirección del dato se corresponde con
                   la dirección de la casilla o celda de memoria que contiene
                   dicho dato. La dirección de una celda de memoria es una
                   identificación predeterminada por el hardware del
                   ordenador y no se puede modificar.




Prof. Ing. Zamantha González Díaz                                           Mayo, 2008
Ejemplo: Sea la variable "a" que representa un dato de
                    tipo entero. Tras la declaración de dicha variable, int a,
                    el compilador reservará el número de bytes necesarios
                    a partir de una determinada dirección de la memoria:
                                      Nombres de
                        Direcciones                Contenido de variables
                                       variable
                           #387                            vacio
                           #388        variable1           vacio
                           #389           A                vacio
                           #390        variable3           vacio
                           #391                            vacio


Prof. Ing. Zamantha González Díaz                                           Mayo, 2008
Prof. Ing. Zamantha González Díaz   Mayo, 2008

Más contenido relacionado

PPTX
Presentacion pilas lista y colas
Madelin Osmarly Soriano
 
PPTX
Programación 3: colas
Angel Vázquez Patiño
 
DOCX
Listas como estructura de datos..
NANO-06
 
PPTX
Bubble Sort Algorithm Presentation
AhmedAlbutty
 
PPTX
Listas,pilas y colas Estructura de Datos
Yorka Marisol Perez Feliz
 
PPTX
Colas estáticas. IESIT
Blanca Elia Jiménez Guzmán
 
PPTX
Bubble sort
Rashmi R Upadhya
 
DOC
Unidad 3 estructuras lineales estaticas y dinamicas
rehoscript
 
Presentacion pilas lista y colas
Madelin Osmarly Soriano
 
Programación 3: colas
Angel Vázquez Patiño
 
Listas como estructura de datos..
NANO-06
 
Bubble Sort Algorithm Presentation
AhmedAlbutty
 
Listas,pilas y colas Estructura de Datos
Yorka Marisol Perez Feliz
 
Colas estáticas. IESIT
Blanca Elia Jiménez Guzmán
 
Bubble sort
Rashmi R Upadhya
 
Unidad 3 estructuras lineales estaticas y dinamicas
rehoscript
 

La actualidad más candente (20)

PPTX
Listas,pilas&colas yorka
Yorka Marisol Perez Feliz
 
PPTX
Pilas estáticas. IESIT
Blanca Elia Jiménez Guzmán
 
PPTX
Tipos de Colas en Programación en C++ - Presentación
Fernando Solis
 
PPTX
Ppt on Linked list,stack,queue
Srajan Shukla
 
PDF
Insertion Sort Algorithm
Gail Carmichael
 
PPT
Estructuras dinámicas
PatriciaU
 
PDF
Arboles M-Way, 2-3 y 2-3-4
Daniel Gomez Jaramillo
 
PPTX
Numpy
Jyoti shukla
 
PDF
Búsqueda no informada - Búsqueda bidireccional
Laura Del Pino Díaz
 
PPT
Queue Data Structure
Lovely Professional University
 
PPTX
Colas en programacion
Luis Igoodbad
 
PPTX
Estructura de datos: lista, pilas y colas
Huascar Génere
 
PPTX
Data Structures - Lecture 3 [Arrays]
Muhammad Hammad Waseem
 
PPTX
Classification of datastructure.ppt
LakshmiSamivel
 
DOCX
Pilas como estructura de datos..
NANO-06
 
PPTX
Introduction to data structure
NUPOORAWSARMOL
 
PPTX
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
José Antonio Sandoval Acosta
 
PDF
Pandas
maikroeder
 
PPTX
Sorting algorithms
Trupti Agrawal
 
PPTX
Estructura de datos lineales y no lineales
los4estatidinamicos
 
Listas,pilas&colas yorka
Yorka Marisol Perez Feliz
 
Pilas estáticas. IESIT
Blanca Elia Jiménez Guzmán
 
Tipos de Colas en Programación en C++ - Presentación
Fernando Solis
 
Ppt on Linked list,stack,queue
Srajan Shukla
 
Insertion Sort Algorithm
Gail Carmichael
 
Estructuras dinámicas
PatriciaU
 
Arboles M-Way, 2-3 y 2-3-4
Daniel Gomez Jaramillo
 
Búsqueda no informada - Búsqueda bidireccional
Laura Del Pino Díaz
 
Queue Data Structure
Lovely Professional University
 
Colas en programacion
Luis Igoodbad
 
Estructura de datos: lista, pilas y colas
Huascar Génere
 
Data Structures - Lecture 3 [Arrays]
Muhammad Hammad Waseem
 
Classification of datastructure.ppt
LakshmiSamivel
 
Pilas como estructura de datos..
NANO-06
 
Introduction to data structure
NUPOORAWSARMOL
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
José Antonio Sandoval Acosta
 
Pandas
maikroeder
 
Sorting algorithms
Trupti Agrawal
 
Estructura de datos lineales y no lineales
los4estatidinamicos
 
Publicidad

Similar a Listas y Pilas (20)

PPTX
Clasificación de las estructuras de datos .pptx
IngCesarTrianaFlores
 
PPTX
Estructura de datos
Marcos Rosales
 
PPTX
Tad lista, pilas y colas
labarra90
 
PPTX
Tad lista, pilas y colas
labarra90
 
PPTX
Lista, pilas y colas
Adan Fernandez
 
PPTX
Lista, pilas y colas
Adan Fernandez
 
PPTX
Listas
Jose Guadalupe
 
PPTX
Estructura de datos
René Sosa Arana
 
PDF
Estructura de Datos. Listas. Concepto y Caracteristicas
LENNYGALINDEZ
 
PDF
Estructuras lineales
eliezerbs
 
PDF
Estructuras lineales unidad 3
eliezerbs
 
PPTX
Unidad 3 estructuras lineales
Urban Skate House
 
PPTX
Tipos de listas en estructura de datos
Carlos Alberto Cuervo Cardenas
 
PPTX
Listas, pilas y colas
knowallrpa
 
PPTX
Listas, pilas y colas
MaxDLeon
 
PDF
listas Luis Guarata 31332901.pdf
LuisAGuarata
 
PPTX
Lista, pilas y colas
Amaury Pascal
 
PPTX
Lista, pilas y colas
Amaury Pascal
 
PPTX
Abstracciones de datos
Ariel Medina
 
PDF
Grafico Mapa Conceptual Sencillo Multicolor.pdf.pdf
diazmockana
 
Clasificación de las estructuras de datos .pptx
IngCesarTrianaFlores
 
Estructura de datos
Marcos Rosales
 
Tad lista, pilas y colas
labarra90
 
Tad lista, pilas y colas
labarra90
 
Lista, pilas y colas
Adan Fernandez
 
Lista, pilas y colas
Adan Fernandez
 
Estructura de datos
René Sosa Arana
 
Estructura de Datos. Listas. Concepto y Caracteristicas
LENNYGALINDEZ
 
Estructuras lineales
eliezerbs
 
Estructuras lineales unidad 3
eliezerbs
 
Unidad 3 estructuras lineales
Urban Skate House
 
Tipos de listas en estructura de datos
Carlos Alberto Cuervo Cardenas
 
Listas, pilas y colas
knowallrpa
 
Listas, pilas y colas
MaxDLeon
 
listas Luis Guarata 31332901.pdf
LuisAGuarata
 
Lista, pilas y colas
Amaury Pascal
 
Lista, pilas y colas
Amaury Pascal
 
Abstracciones de datos
Ariel Medina
 
Grafico Mapa Conceptual Sencillo Multicolor.pdf.pdf
diazmockana
 
Publicidad

Más de Zamantha Gonzalez Universidad Nacional Abierta (20)

PPTX
Elementos del diseño visual
Zamantha Gonzalez Universidad Nacional Abierta
 
PDF
Instructivo Autocorreccion Pruebas Objetivas UNA
Zamantha Gonzalez Universidad Nacional Abierta
 
PPTX
Aspectos básicos de google classroom
Zamantha Gonzalez Universidad Nacional Abierta
 
PPTX
Lineamientos curso de iniciación 2017 1
Zamantha Gonzalez Universidad Nacional Abierta
 
PPTX
Presentacion telemática educativa
Zamantha Gonzalez Universidad Nacional Abierta
 
PPTX
Uso y creacion de unidades
Zamantha Gonzalez Universidad Nacional Abierta
 
PPTX
Encuentro inicial estudiantes primer semestre
Zamantha Gonzalez Universidad Nacional Abierta
 

Último (20)

PPTX
fisura labio alveolo palatinos en neonatos
AnaGuerrero133994
 
PDF
ANTIBIOTICOS EN TRAUMATOLOGIA.pptx.pdf.pdf
OlgaLMV1
 
PPTX
Obstrucción de la vía aerea - atls - uptodate.pptx
Valeria Bayer
 
PPTX
Luis Abril - manejo pacientes labio y paladar hendido
LuisAbrilOrellana
 
PPTX
5. PSICOPROFILAXIS OBSTÉTRICA DE SALUD PUBLICA.pptx
scriptsjose
 
PPTX
de la idea al impacto, selección y redacción del tema de investigación medica
Johnny Giusto
 
PPTX
HEMODIALISIS POSITIVA, uso tecnicas.pptx
Josevasquez498898
 
PPTX
sindrome coronario agudo sin elevacion del st
drdiegochanarriola
 
PDF
Chuleta /RESUMEN para manejo de ACOD .pdf
Centro de Salud Natahoyo
 
PPTX
Radiografías interpretadas, tarea de UAG
racricardo33
 
PPTX
SIGNOS RADIOLOGICOS DEL NEUMOPERITONEO.pptx
maria578896
 
PPTX
Labio y paladar fisurado en el perído de 0 a 2 años
KathrynLlivichuzca
 
PPTX
CASO CLINICO ANAIKA MELO.pptxAFJSNFADGNVadgnv
YazminCedano1
 
PPTX
Síndrome compartimental en el área de traumatología
CarlaBarrios11
 
PPTX
Anemias clsificacion tipos segun la oms .pptx
ssuser1449f21
 
PPTX
SEMANA 06 - Tecnicas de valoracion RN.pptx
amauri38
 
PPTX
Copia de manejo choque nuevo tratamiento y fisiología
jenniferreyes2011313
 
PDF
Conceptos Básicos de Anestesiología Evangelista Arevalo Karen Dayana.pdf
KARENDAYANAEVANGELIS
 
PPTX
Bethesda 2-1.pptx para clasificion de ti
AlexWittingham1
 
PPTX
LOS ALIMENTOS , NUTRIENTES PARA LA SALUD
JhonnatanReynanuez
 
fisura labio alveolo palatinos en neonatos
AnaGuerrero133994
 
ANTIBIOTICOS EN TRAUMATOLOGIA.pptx.pdf.pdf
OlgaLMV1
 
Obstrucción de la vía aerea - atls - uptodate.pptx
Valeria Bayer
 
Luis Abril - manejo pacientes labio y paladar hendido
LuisAbrilOrellana
 
5. PSICOPROFILAXIS OBSTÉTRICA DE SALUD PUBLICA.pptx
scriptsjose
 
de la idea al impacto, selección y redacción del tema de investigación medica
Johnny Giusto
 
HEMODIALISIS POSITIVA, uso tecnicas.pptx
Josevasquez498898
 
sindrome coronario agudo sin elevacion del st
drdiegochanarriola
 
Chuleta /RESUMEN para manejo de ACOD .pdf
Centro de Salud Natahoyo
 
Radiografías interpretadas, tarea de UAG
racricardo33
 
SIGNOS RADIOLOGICOS DEL NEUMOPERITONEO.pptx
maria578896
 
Labio y paladar fisurado en el perído de 0 a 2 años
KathrynLlivichuzca
 
CASO CLINICO ANAIKA MELO.pptxAFJSNFADGNVadgnv
YazminCedano1
 
Síndrome compartimental en el área de traumatología
CarlaBarrios11
 
Anemias clsificacion tipos segun la oms .pptx
ssuser1449f21
 
SEMANA 06 - Tecnicas de valoracion RN.pptx
amauri38
 
Copia de manejo choque nuevo tratamiento y fisiología
jenniferreyes2011313
 
Conceptos Básicos de Anestesiología Evangelista Arevalo Karen Dayana.pdf
KARENDAYANAEVANGELIS
 
Bethesda 2-1.pptx para clasificion de ti
AlexWittingham1
 
LOS ALIMENTOS , NUTRIENTES PARA LA SALUD
JhonnatanReynanuez
 

Listas y Pilas

  • 1. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 2. Los datos físicos se encuentran asociados a un mecanismo de datos, que controla la forma en la que la información puede ser accedida por los programas, existen principalmente cuatro tipos de estos mecanismos. Que son : Las pilas Las colas Las listas Los árboles Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 3. Cada uno de los métodos mencionados con anterioridad proporciona una solución a cada tipo de problema. Cada uno un dispositivo que realiza una operación de º almacenamiento y de recuperación de los datos dados. Todos ellos tienen dos elementos en común, como es : El almacenamiento La recuperación de datos de datos Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 4. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 5. CONCEPTO DE LISTA Es un conjunto de nodos cuyas propiedades estructurales incluyen solo las posiciones lineales (unidimensionales) para ella se definen operaciones como las siguientes: .- Tener acceso a un nodo .- Insertar y eliminar un nodo en la lista .- combinar dos o mas listas en una .- Dividir una lista en dos o mas listas .- Determinar la cantidad de nodos en la lista .- Ordenar la lista de acuerdo a un criterio .- buscar un elemento bajo una condición. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 6. primero PILAS Es un conjunto dinámico que obedece el orden lifo Las pilas es en las que todas las inserciones y extracciones de elementos se realizan por un solo extremo, llamado el tope de la pila. ultimo Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 7. LAS SIMPLEMENTE ENLAZADAS Contienen un enlace al elemento siguiente, las doblemente enlazadas tanto al siguiente elemento como al elemento anterior del la lista. Una lista simplemente enlazada necesita que cada elemento contenga un enlace con el siguiente elemento, cada elemento consiste en una estructura de campos de información a punteros de enlace. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 8. LISTAS DOBLEMENTE ENLAZADAS. Las listas doblemente enlazadas consisten en datos y enlaces tanto al elemento siguiente como al elemento anterior. Con lo que se consiguen dos grandes ventajas, primero la lista se puede leer en cualquier dirección, la segunda es que se pueden leer los enlaces hacia delante como hacia atrás, con lo que si un enlace resulta no valido se puede reconstruir utilizando el otro enlace. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 9. LISTAS CIRCULARES Las listas son estructuras muy ricas y variadas. Hemos visto las más simples; las listas lineales. Veamos ahora otros tipos de listas, similares a las ya estudiadas; las listas circulares. Una lista lineal enlazada circularmente, o simplemente una lista circular, es una lista en la que el puntero siguiente al "último" elemento apunta hacia el primer elemento o nodo. En estas listas no existen ni primero ni últimos elementos, aunque se debe elegir obligatoriamente un puntero para referenciar la lista. Esta lista presenta la gran ventaja de que cada nodo en una lista circular es accesible evitando caer en un bucle infinito. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 10. EJEMPLO: Las listas circulares tienen la característica de que el ultimo elemento de la misma apunta al primero. en la siguiente figura se mostrara un ejemplo de una lista circular: las operaciones en listas circulares son similares a las operaciones en listas lineales , por lo tanto no se volverá a tratar cada una de ellas. En el caso de la operación de recorrido de las listas circulares , es necesario que se debe aclarar que se debe considerar algún criterio para detectar cuando se han visitado todos los nodos para evitar caer en ciclos infinitos. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 11. PILAS Estructura de datos en la que los elementos se añaden y quitan solo por un extremo. Una pila es lo contrario de una cola, ya que su acceso es de tipo LIFO, el último que entra es el primero que sale. Imaginar un montón de libros unos encima de otros y que para acceder al segundo por arriba primero es necesario coger el primero, su utilización principal es para el software de sistemas, compiladores, intérpretes. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 12. ESPECIFICACIÓN FORMAL DEL TAD-PILA Para definir el tipo de datos abstracto (TAD) pilas, no es suficiente la estructura lógica. Debemos definir el conjunto de operaciones que permita al usuario acceder y manipular los elementos almacenados en una pila. Como las pilas es una estructura dinámica, cambia conforme se añaden y quitan elementos en esta. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 13. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 14. IMPLEMENTACION DE PILAS CON ARREGLOS Una pilas es una colección ordenada de objetos. En C, arreglos permite almacenar colecciones ordenadas. Las desventajas de implementar una pila mediante un arreglo es que esta última es de tamaño fijo, mientras que las pilas son de tamaño dinámico. OPERACIONES DE UNA PILA Las operaciones básicas de una pila son push (empuja, meter) y pop (sacar) _ Push: añade un nuevo elemento _ Pop: elimina un nuevo elemento Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 15. •Otra operaciones usualmente incluidas es el tipo de datos adstrato pila son: _ isEmpty (esta vacía): verifica si la pila es esta vacía _ IsFull (esta Llena): verifica si la pila esta llena Ejemplo 1 4 1 1 1 1 1 4 4 4 4 4 4 push(4) push(1) push(1) pop() push(4) pop() Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 16. •Pila_Vacia: Consultar si la pila está vacía •Pila_Llena: Consultar si la pila está llena •Consultar_Pila: Consultar el contenido de la cima de la pila sin sacar el elemento de la misma El carácter dinámico de la pila se debe a que el tamaño de la pila es variable, independientemente de la implementación. Crea una pila inicializándola como una pila vacía Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 17. Push: inserta un elemento en el top de la pila Cada elemento al ser insertado ocupar siempre el top en la pila; 12 en la imagen anterior y 15 en esta imagen. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 18. Los elementos han sido insetados en este orden: 12, 15, 99, 1, 5, 33, 421, 53, 27, 82, 641, 66, 31, 41, 51 dado que el ultimo elemento fue el 51 es el que ocupa el top en la pila Una característica de las pilas es que son estructuras LIFO(last input , first output), es decir el ultimo en entrar sera el primero en salir Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 19. VARIABLES DINÁMICAS. Existen una gran variedad de aplicaciones en las que no es posible conocer a priori la dimensión de los datos que serán necesarios, por lo que en dichos casos es necesario utilizar tipos de datos DINÁMICOS. El inconveniente es que, muy posiblemente, se ocupará memoria que puede ser necesaria para otras variables. Las estructuras dinámicas se caracterizan porque la reserva de memoria se realiza durante la ejecución del programa pudiendo reservar y liberar posiciones de memoria según sea necesario durante la ejecución del mismo . Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 20. DIRECCIONES DE MEMORIA: La memoria interna del ordenador se organiza mediante celdas numeradas o direccionadas consecutivamente. Cada dato almacenado ocupará una de estas celdas (conjunto de bytes adyacentes). El número de bytes que se requieren para almacenar un dato depende de su tipo, así como del procesador de la máquina. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 21. La declaración de un determinado dato indica, entre otras cosas, que el compilador reservará automáticamente memoria para almacenar dicho dato. El dato podrá ser accedido si se conoce su localización o dirección de memoria, ( nota ). La dirección del dato se corresponde con la dirección de la casilla o celda de memoria que contiene dicho dato. La dirección de una celda de memoria es una identificación predeterminada por el hardware del ordenador y no se puede modificar. Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 22. Ejemplo: Sea la variable "a" que representa un dato de tipo entero. Tras la declaración de dicha variable, int a, el compilador reservará el número de bytes necesarios a partir de una determinada dirección de la memoria: Nombres de Direcciones Contenido de variables variable #387 vacio #388 variable1 vacio #389 A vacio #390 variable3 vacio #391 vacio Prof. Ing. Zamantha González Díaz Mayo, 2008
  • 23. Prof. Ing. Zamantha González Díaz Mayo, 2008