Successfully reported this slideshow.
Upcoming SlideShare
×

# Estructuras de datos

939 views

Published on

• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

### Estructuras de datos

1. 1. 0 A 1 IMPLEMENTANDO METODOS DE LA CLASE PILA USANDO CLASE MEMORIA SACAR DE LA PILA Cab =0 3 B 4 7 Y -1 A B Y 0 A 1 Cab =3 3 B 4 7 Y -1 B Y 3 B 7 7 Y -1 PONER EN LA PILA A 3 Cab =3 0 B Y A
2. 2. A 3 CLASE COLA USANDO MEMORIA 0 B 5 3 C 8 5 D 9 8 E -1 9 Frente = 0 Final = 9 A 3 0 B 5 3 C 8 5 D 9 8 E 11 9 Frente = 3 Final = 11 R -1 11 A BCDE R PONER EN LA COLA SACAR DE LA COLA
3. 3. A 1 CLASE BICOLA USANDO MEMORIA 0 B 5 1 C 6 5 D 3 6 E -1 3 Frente = 0 Final = 3 A 1 0 B 5 1 C 6 5 D 3 6 E 4 3 Frente = 1 Final = 4 R -1 4 A 1 0 B 5 1 C 6 5 D -1 6 E 4 3 Frente = 2 Final = 6 z 0 2 Sacando del inicio Sacando del final Poner al final Poner al inicio
4. 4. 3 14 0 CLASE POLINOMIO USANDO MEMORIA 7 3 x 14 + 2 x 8 + 1 2 8 7 5 1 0 5 -1 Poli = 0 3 14 0 7 -2 x 8 2 8 7 5 1 0 5 -1 Poli = 0 3 14 0 11 2 8 7 5 1 0 5 -1 Poli = 0 4 x 10 4 10 11 7 Coef, Exp, Sig 3 x 14 + 4 x 10 + 2 x 8 1 3 x 14 + 1
5. 5. CLASE MATRIZDISPERSA USANDO MEMORIA 1 11 0 99 0 0 33 0 55 120 0 44 0 2 4 11 66 3 -1 4 3 3 33 99 -1 2 55 66 5 3 120 5 -1 2 44 3 -1 NroFil = 3 NroCol = 3 ValDef = 0 Matriz = 0 Fila , DirecF , DirecC Col , Valor , DirecC Dato1, Dato2, Dato3
6. 6. CLASE MATRIZDISPERSA USANDO MEMORIA 1 11 0 99 0 0 33 0 55 120 0 44 0 2 4 11 5 3 -1 4 3 3 33 99 -1 2 55 66 5 3 120 5 -1 2 44 3 -1 NroFil = 3 NroCol = 3 ValDef = 0 Matriz = 0 Fila , DirecF , DirecC Col , Valor , DirecC Dato1, Dato2, Dato3 0 0 33 0 0 120 0 44 0 A[ 3,3] = 0
7. 7. <ul><li>IMPLEMENTAR LA CLASE LISTA ENMARCADOS EN LAS ESPECIFICACIONES INDICADAS A CONTINUACION, SE DEBERA IMPLEMENTAR USANDO LA SIM. DE MEMORIA </li></ul><ul><li>FECHA DE PRESENTACION EL PRIMER DIA DE CLASES DESPUES DEL16 DE JULIO </li></ul>PRACTICO PARA INGRESAR AL 2DO EXAMEN
8. 8. Descripción del TDA Lista <ul><li>Una lista es una colección de elementos ordenada de acuerdo a las posiciones de éstos ( secuencia , relación predecesor-sucesor ) </li></ul><ul><li>a i  T, i=1,...,n ( n es la longitud de la lista) </li></ul><ul><li>n=0  lista vacía </li></ul><ul><li>Caracterización importante: los elementos pueden insertarse o eliminarse en cualquier posición de una lista </li></ul>primer elemento último elemento L=<a 1 , a 2 ,...,a n >
9. 9. Descripción del TDA Lista <ul><li>Definición Recursiva: </li></ul><ul><li>Una lista L es un conjunto de elementos del mismo tipo que: </li></ul><ul><ul><li>O bien es vacío, en cuyo caso se denomina lista vacía . </li></ul></ul><ul><ul><li>O bien puede distinguirse un elemento, llamado cabeza , y el resto de los elementos constituyen una lista L' , denominada resto de la lista original. </li></ul></ul>
10. 10. Descripción del TDA Lista <ul><li>Operaciones de construcción </li></ul><ul><ul><li>CREA </li></ul></ul><ul><li>Operaciones de posicionamiento </li></ul><ul><ul><li>FIN </li></ul></ul><ul><ul><li>PRIMERO </li></ul></ul><ul><ul><li>SIGUIENTE </li></ul></ul><ul><ul><li>ANTERIOR </li></ul></ul><ul><li>Operaciones de consulta </li></ul><ul><ul><li>VACIA </li></ul></ul><ul><ul><li>RECUPERA </li></ul></ul><ul><ul><li>LONGITUD </li></ul></ul><ul><li>Operaciones de modificación </li></ul><ul><ul><li>INSERTA </li></ul></ul><ul><ul><li>SUPRIME </li></ul></ul><ul><ul><li>MODIFICA </li></ul></ul>
11. 11. Especificación del TDA Lista <ul><li>Lista = TDA con operaciones crea, fin, primero, siguiente, anterior, vacia, recupera, longitud, inserta, suprime y modifica . </li></ul><ul><li>DESCRIPCION </li></ul><ul><li>Los valores del TDA Lista son listas de elementos del tipo Elemento . Las posiciones de los elementos de la lista y la posición fin de la lista son del tipo Posicion . Las listas son mutables : inserta, suprime y modifica añaden, eliminan y modifican elementos en la lista respectivamente. </li></ul>
12. 12. Especificación del TDA Lista <ul><li>OPERACIONES </li></ul><ul><li>Lista::crea() </li></ul><ul><ul><li>efecto: Devuelve la lista vacía L. </li></ul></ul><ul><li>Lista::fin </li></ul><ul><li>efecto: Devuelve la posición fin de la lista L. </li></ul><ul><li>Lista::primero() </li></ul><ul><li>requerimientos: La lista L es no vacía. </li></ul><ul><ul><li>efecto: Devuelve la posición del primer elemento de la lista L. </li></ul></ul>
13. 13. Especificación del TDA Lista <ul><li>Lista::siguiente( P:Posicion) devuelve (Posicion) </li></ul><ul><ul><li>requerimientos: La lista L es no vacía. La posición P es la posición de un elemento de lista L. </li></ul></ul><ul><ul><li>efecto: Devuelve la posición que ocupa el elemento sucesor del elemento que ocupa la posición P en la lista L. Si P es la posición que ocupa el último elemento de lista L, devuelve la posición fin de la lista. </li></ul></ul><ul><li>Lista::anterior( P:Posicion) devuelve (Posicion) </li></ul><ul><ul><li>requerimientos: La lista L es no vacía. La posición P es la posición de un elemento de lista L distinto del primero, o bien la posición fin de la lista L. </li></ul></ul><ul><ul><li>efecto: Devuelve la posición que ocupa el elemento predecesor del elemento que ocupa la posición P en la lista L. Si P es la posición fin de lista L, devuelve la posición del último elemento de la lista. </li></ul></ul>
14. 14. Especificación del TDA Lista <ul><li>Lista::vacia() devuelve (booleano) </li></ul><ul><ul><li>efecto: Devuelve cierto si L es la lista vacía, y falso en caso contrario. </li></ul></ul><ul><li>Lista::recupera( P:Posicion) devuelve (E:Elemento) </li></ul><ul><ul><li>requerimientos: La lista L es no vacía. La posición P es la posición de un elemento de la lista L. </li></ul></ul><ul><ul><li>efecto: Devuelve en E el elemento que ocupa la posición P en la lista L. </li></ul></ul><ul><li>Lista::longitud() devuelve (entero) </li></ul><ul><ul><li>efecto: Devuelve la longitud de la lista L. </li></ul></ul>
15. 15. Especificación del TDA Lista <ul><li>Lista::inserta( P:Posicion; E:Elemento) </li></ul><ul><ul><li>requerimientos: La posición P es la posición de un elemento de lista L, o bien la posición fin de la lista. </li></ul></ul><ul><ul><li>modifica: L. </li></ul></ul><ul><ul><li>efecto: Inserta el elemento E en la lista L como predecesor del elemento que ocupa la posición P en la lista. Si P es la posición fin de la lista L entonces el elemento E pasa a ser el último elemento de la lista tras la operación de inserción. El valor de P, así como el de cualquier otro caso o instancia del tipo de datos posicion existente antes de la operación de inserción, quedan indefinidos tras ejecutarse la operación. </li></ul></ul><ul><li>Lista::suprime( P:Posicion) </li></ul><ul><ul><li>requerimientos: La lista L es no vacía. La posición P es la posición de un elemento de lista L. </li></ul></ul><ul><ul><li>modifica: L. </li></ul></ul><ul><ul><li>efecto: Elimina de la lista L el elemento que ocupa la posición P. El valor de P, así como el de cualquier otro caso o instancia del tipo de datos posicion existente antes de la operación de eliminación, quedan indefinidos tras ejecutarse la operación. </li></ul></ul>
16. 16. Especificación del TDA Lista <ul><li>Lista::modifica( P:posicion; E:tipoelem) </li></ul><ul><ul><li>requerimientos: La lista L es no vacía. La posición P es la posición de un elemento de lista L. </li></ul></ul><ul><ul><li>modifica: L. </li></ul></ul><ul><ul><li>efecto: Modifica el elemento que ocupa la posición P de la lista L, cambiándolo por el nuevo elemento E. </li></ul></ul>
17. 17. PRACTICO PARA EL EXAMEN FINAL <ul><li>IMPLEMENTAR EL JUEGO DENOMINADO PAC-MAN USANDO NECESARIAMENTE LA CLASE MATRIZ, COLA, Y PILA. </li></ul><ul><li>FECHA DE PRESENTACION EL PRIMER DIA DE CLASES DESPUES DEL 19 DE JULIO. </li></ul>