Ayudantia 3: Pilas- Colas

Slides:



Advertisements
Presentaciones similares
Definición Las colas ofrecen dos operaciones fundamentales, que son encolar (al final de la cola) y desencolar (del comienzo de la cola). Al igual que.
Advertisements

PILA.
ESTRUCTURA DE DATOS Unidad 03 PILAS.
ESTRUCTURA DE DATOS Unidad 03 COLAS.
Pilas y Colas Fundamentos Estructuras de Datos (Programación 2)
ÁRBOLES EN C UNIVERSIDAD “ALONSO DE OJEDA” Facultad de Ingeniería
TDA LISTA ESTRUCTURAS DE DATOS.
Unidad 5 Listas Enlazadas Bibliografía: Algoritmos y Estructuras de datos de Aguilar y Martinez. Unidad 9 Autor: Ing Rolando Simon Titiosky.
Listas enlazadas c++ Prof. Franklin Cedeño.
Tema 3: La estructura de datos Lista
Estructura de Datos En C++
Programación y Estructuras de Datos
PROGRAMACION DE Pilas o Stacks y Colas
Estructuras de Datos Especificación formal de Listas.
M.I.A Daniel Alejandro García López.  Un TDA es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de.
Programación II Colas Igor Santos Grueiro.
Colas y Listas Enlazadas
Tema Nº4.
Estructuras dinámicas de datos, TAD Lista, parte 2
COLAS, IMPLEMENTACIÓN A PARTIR DE LISTAS Y PARA PILAS
Pila1UVM Colas. Pila2UVM Pila3UVM 3.1 Objetivos El estudiante manejará el tad Cola, sobre memoria estática.
Pilas Una pila es una estructura lineal de elementos en donde se pueden agregar o eliminar datos únicamente por uno de los dos extremos. En consecuencia.
Igor Santos Grueiro. De este tipo de pilas NO vamos a hablar.
Listas circulares.
C++ LISTAS C++ 11/04/2017 Ing. Edgar Ruiz Lizama.
POR: Meza Guevara Sandra Fabiola Contreras Meléndez Damariz Figueroa Cisneros Ricardo UNIVERSIDAD TECNOLÓGICA DE DURANGO TECNOLÓGIAS DE LA INFORMACIÓN.
PILAS, COLAS, RECURSIVIDAD.
ESTRUCTURAS DE DATOS I Conocer, comprender y analizar algunos de los principales tipos de estructuras de datos.
Estructuras.
Estructura de Datos y Algoritmos
Programación I Técnico Universitario en Web Dpto. de Informática FCFMyN - UNSL -11-
1 Estructuras de Datos Elementales:stacks (pilas), queues (colas), linked lists (listas enlazadas), y rooted trees (árboles con raíz) Agustín J. González.
Pila1UVM Pilas. Pila2UVM Pila3UVM 2.1 Objetivos El estudiante manejará el tad Pila contigua.
Aplicación de estructuras de datos
Pilas y Colas Estructuras de Datos.
TDA PILA ESTRUCTURAS DE DATOS.
República Bolivariana de Venezuela. Ministerio del PP para la Defensa. Universidad Nacional Experimental de la Fuerza Armada. Cátedra: Instrucción Militar.
Informática Ingeniería en Electrónica y Automática Industrial
Universitarios: Ricardo Gonzales Jimenez Wilfredo Coca Reinaldo Yohan Docente: Lic. Israel Torrez Valverde Tema: Listas doblemente Enlazadas.
Programación en C para electrónicos
PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado.
Listas Ligadas Simples. Definíción I  Es, en sencillas palabras. un grupo de datos organizados secuencialmente, pero a diferencia de los arreglos, la.
Punteros Recomendado: 1. Nivelación Funciones
Son estructuras de datos que almacenan y recuperan sus elementos atendiendo a un estricto orden (LIFO Last – in, first –out Ultimo en entrar – primero.
 Ignacio Soto Valdez R  Paola Karina Suarez Salazar R  Mario Alberto Castillo Aviles R
Estructuras de datos Fundamentos de análisis y diseño de algoritmos.
INSTITUTO TECNOLOGICO DE APIZACO
UNIDAD IV. PILAS, COLAS, RECURSION APLICADAS A LENGUAJE C.
Estructura de datos Francisco Castro
Estructuras con punteros: Nodos y Listas. Un programa C.
Lic. En C.C. Ann Margareth Meza Rodríguez
IMPLEMENTACION DE COLAS MEDIANTE LISTAS
Estructura de Datos..
Pilas y Colas Cursos Propedéuticos 2006 Programación y Estructuras de Datos Manuel Montes Claudia Feregrino
PROGRAMACION DE Pilas o Stacks
Estructura de Datos PILAS. es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO (del inglés Last In.
M.C. Meliza Contreras González
M.C. Meliza Contreras González
PILAS Una pila es una estructura de datos o lista de elementos, a la cual se le puede insertar o eliminar su contenido sólo por uno de sus extremos, llamado.
Laboratorio de programación
ESTRUCTURAS LINEALES “LA PILA”
Pilas Grupo 4. 1 Stack o Pila Definición: Una pila es una estructura de datos, a la cual se le puede ingresar o sacar elementos por un sólo lado. También.
PROGRAMACION DE Pilas o Stacks y Colas
PUNTEROS. Los punteros son de amplia utilización en programación y muchos lenguajes permiten la manipulación directa o indirecta de los mismos. Su razón.
Ficha de datos Créditos Institucionales: 8 créditos.
Estructura de Datos PILA Universidad Hispanoamericana Prof. Ing. Erick López.
Listas Dinámicas.
1 ListaUna Lista se define como una serie de N elementos E 1, E 2,..., E N, ordenados de manera consecutiva, es decir, el elemento E k (que se denomina.
UNIVERSIDAD DIEGO PORTALES Facultad de Ingeniería Programación Avanzada TIPOS ABSTRACTOS DE DATOS TAD Tema: TIPOS ABSTRACTOS DE DATOS TAD Subtema: COLAS.
Lenguaje de Programación II Prof. Rafael Montenegro B. Carrera: T.S.U en Informática Periodo: 2014-I.
Transcripción de la presentación:

Ayudantia 3: Pilas- Colas Carlos Pulgar R. Mail: carlos.pulgar@alumnos.usm.cl Página Ayudantía: http://capulgar.wordpress.com/

Parte 1: Pilas ¿Qué es una Pila? ¿Operaciones sobre Pilas? Son un tipo especial de lista, conocidas como listas LIFO (Last In, First Out: el último en entrar es el primero en salir). Los elementos se "amontonan" o apilan, de modo que sólo el elemento que está encima de la pila puede ser leído, y sólo pueden añadirse elementos encima de la pila. ¿Operaciones sobre Pilas? Ver si esta Vacia. Push: Añadir un elemento al final de la pila. Pop: Devuelve el elemento almacenado en el tope (nodo, que dependiendo de la implementación puede ser el 1° o el que apunta a NULL, pero el mas general y simple de implementar es eliminar el 1°) y elimina el nodo.

Parte 2: Colas ¿Qué son las Colas? ¿Operaciones sobre Colas? Tipo de listas, conocidas como listas FIFO (First In, First Out: El primero en entrar es el primero en salir). Los elementos se almacenan en fila, pero sólo pueden añadirse por un extremo y leerse por el otro. ¿Operaciones sobre Colas? Insertar (Encolar). Eliminar (Desencolar). Ver si esta vacia. Otros tipos de colas Colas de prioridad

Ejercicios Está programando un software de edición de texto, y quiere implementar una opción de “Deshacer” (el típico CTRL-Z). ¿Qué tipo de estructura de datos usaría para guardar los datos que requiere Deshacer? Justifique. Escriba la definición struct que se requiere para un nodo de una lista doblemente enlazada a través de punteros. Declaramos una variable int *x;. Si luego escribimos p1=x; p2=*x; p3=&x; ¿De qué tipo deberían ser p1, p2 y p3? En palabras, ¿qué le estamos asignando a cada p? Programe en C una función que permite intercambiar dos nodos vecinos (los nodos con el contenido y no sólo el contenido) en una lista cuyos nodos están enlazados a través de punteros. Los nodos a intercambiar no son el primero ni el último en una lista con por lo menos 4 elementos. Un puntero p apunta al primero de los dos nodos. El puntero lista apunta a la lista. Esta función será una nueva función del TDA lista.

Ejercicios La Empresa de Ferrocarriles del Estado (EFE) para realizar su traslado de pasajeros hacia el Sur, ha ido apilando los carros respectivos en una línea de tren en una estación; (ver figura). La locomotora se toma como un carro más. Justo antes de salir; su conductor se percata que uno sus carros está defectuoso. Ayúdele a escribir una función para sacar el carro defectuoso de la línea y dejar los demás carros en el orden que estaban (misma línea), para poder cumplir con el itinerario previsto. Los carros tienen asignado una sigla. El carro defectuoso tiene asignada la abreviatura “EFE29”. No se sabe en qué lugar está el carro defectuoso ni tampoco el número de carros del tren. Implementar una función Mezcla2 que tenga como parámetros dos listas de enteros ordenados de menor a mayor y que devuelva una nueva lista como unión de ambas con sus elementos ordenados de la misma forma.

Respuestas Una pila, ya que al apretar CTRL-Z desharemos primero lo último que habíamos hecho, luego lo anterior, etc. (es “LIFO”). s ooo typedef struct NODO { tipo dato; struct NODO *siguiente; struct NODO *anterior; } nodo; int *p1; /*asignamos un puntero a entero */ int p2; /*asignamos un entero */ int **p3; /*asignamos un puntero a un puntero a entero */

Respuestas 4) void intercambia(lista *list, lista *p) { lista *aux; aux=list; while(aux->sgte!=p) aux=aux->sgte; aux->sgte=p->sgte; p->sgte=p->sgte->sgte; aux->sgte->sgte=p; }

Respuestas void Tren(TPila * tope, TElemento cod) { TPila * tope1; while ( tope -> info != cod) Push(tope1, tope -> info); Pop(tope); } while(tope1 != Null) Push(tope, tope1 ->info); Pop(tope1);