Estructuras de datos
Transcript of Estructuras de datos
![Page 1: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/1.jpg)
0A 1
IMPLEMENTANDO METODOS DE LA CLASE PILA USANDO CLASE MEMORIA
SACAR DE LA PILA
Cab =03
B 47
Y -1
ABY
0
A 1
Cab =33
B 47
Y -1 BY
3
B 77
Y -1
PONER EN LA PILA
A 3
Cab =3
0
BY
A
![Page 2: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/2.jpg)
A 3
CLASE COLA USANDO MEMORIA
0
B 53
C 85
D 98
E -19
Frente = 0Final = 9
A 30
B 53
C 85
D 98
E 119
Frente = 3
Final = 11
R -111
A BCDE R
PONER EN LA COLA
SACAR DE LA COLA
![Page 3: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/3.jpg)
A 1
CLASE BICOLA USANDO MEMORIA
0
B 51
C 65
D 36
E -13
Frente = 0 Final = 3
A 10
B 51
C 65
D 36
E 43
Frente = 1
Final = 4
R -14
A 10
B 51
C 65
D -16
E 43
Frente = 2
Final = 6
z 02
Sacando del in
icio
Sacan
do d
el fin
al
Poner al final
Pon
er a
l ini
cio
![Page 4: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/4.jpg)
3 140
CLASE POLINOMIO USANDO MEMORIA
7
3 x14 + 2 x8 + 1
2 87
5 1 05
-1Poli = 0
3 140
7
-2 x8
2 87
5 1 05
-1Poli = 0
3 140
11 2 87
5 1 05
-1Poli = 0
4 x10
4 1011
7
Coef, Exp, Sig
3 x14 + 4 x10 + 2 x8 1
3 x14 + 1
![Page 5: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/5.jpg)
CLASE MATRIZDISPERSA USANDO MEMORIA
1 110
99
0 0 33
0 55 120
0 44 0
2 411
66
3 -14
3
3 3399
-1
2 5566
5 3 1205
-1
2 443
-1
NroFil = 3NroCol = 3ValDef = 0
Matriz = 0
Fila , DirecF , DirecCCol , Valor , DirecC
Dato1, Dato2, Dato3
![Page 6: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/6.jpg)
CLASE MATRIZDISPERSA USANDO MEMORIA
1 110
99
0 0 33
0 55 120
0 44 0
2 411
5
3 -14
3
3 3399
-1
2 5566
5 3 1205
-1
2 443
-1
NroFil = 3NroCol = 3ValDef = 0
Matriz = 0
Fila , DirecF , DirecCCol , Valor , DirecC
Dato1, Dato2, Dato3
0 0 33
0 0 120
0 44 0A[ 3,3] = 0
![Page 7: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/7.jpg)
IMPLEMENTAR LA CLASE LISTA ENMARCADOS EN LAS ESPECIFICACIONES INDICADAS A CONTINUACION, SE DEBERA IMPLEMENTAR USANDO LA SIM. DE MEMORIA
FECHA DE PRESENTACION EL PRIMER DIA DE CLASES DESPUES DEL16 DE JULIO
PRACTICO PARA INGRESAR AL 2DO EXAMEN
![Page 8: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/8.jpg)
Descripción del TDA ListaDescripción del TDA Lista
Una lista es una colección de elementos ordenada de acuerdo a las posiciones de éstos (secuencia, relación predecesor-sucesor)
ai T, i=1,...,n (n es la longitud de la lista) n=0 lista vacía Caracterización importante: los elementos pueden
insertarse o eliminarse en cualquier posición de una lista
primer elemento
último elemento
L=<a1, a2,...,an>
![Page 9: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/9.jpg)
Descripción del TDA ListaDescripción del TDA Lista
Definición Recursiva:Una lista L es un conjunto de elementos del mismo tipo que:
O bien es vacío, en cuyo caso se denomina lista vacía.O bien puede distinguirse un elemento, llamado
cabeza, y el resto de los elementos constituyen una lista L', denominada resto de la lista original.
![Page 10: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/10.jpg)
Descripción del TDA ListaDescripción del TDA Lista Operaciones de construcción
CREA
Operaciones de posicionamiento FIN PRIMERO SIGUIENTE ANTERIOR
Operaciones de consulta VACIA RECUPERA LONGITUD
Operaciones de modificación INSERTA SUPRIME MODIFICA
![Page 11: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/11.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
Lista = TDA con operaciones crea, fin, primero, siguiente, anterior, vacia, recupera, longitud, inserta, suprime y modifica.
DESCRIPCION 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.
![Page 12: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/12.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
OPERACIONES
Lista::crea() efecto: Devuelve la lista vacía L.
Lista::fin efecto: Devuelve la posición fin de la lista L.
Lista::primero() requerimientos: La lista L es no vacía.
efecto: Devuelve la posición del primer elemento de la lista L.
![Page 13: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/13.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
Lista::siguiente( P:Posicion) devuelve (Posicion)requerimientos: La lista L es no vacía. La posición P es la posición de un
elemento de lista L.
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.
Lista::anterior( P:Posicion) devuelve (Posicion)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.
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.
![Page 14: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/14.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
Lista::vacia() devuelve (booleano)efecto: Devuelve cierto si L es la lista vacía, y falso en caso contrario.
Lista::recupera( P:Posicion) devuelve (E:Elemento)requerimientos: La lista L es no vacía. La posición P es la posición de un
elemento de la lista L. efecto: Devuelve en E el elemento que ocupa la posición P en la lista L.
Lista::longitud() devuelve (entero)efecto: Devuelve la longitud de la lista L.
![Page 15: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/15.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
Lista::inserta( P:Posicion; E:Elemento)requerimientos: La posición P es la posición de un elemento de lista L, o
bien la posición fin de la lista.modifica: L.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.
Lista::suprime( P:Posicion)requerimientos: La lista L es no vacía. La posición P es la posición de un
elemento de lista L.modifica: L.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.
![Page 16: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/16.jpg)
Especificación del TDA ListaEspecificación del TDA Lista
Lista::modifica( P:posicion; E:tipoelem)requerimientos: La lista L es no vacía. La posición P es la posición de un
elemento de lista L.
modifica: L.
efecto: Modifica el elemento que ocupa la posición P de la lista L, cambiándolo por el nuevo elemento E.
![Page 17: Estructuras de datos](https://reader036.fdocuments.ec/reader036/viewer/2022083001/557be0f6d8b42a8b3e8b54c8/html5/thumbnails/17.jpg)
PRACTICO PARA EL EXAMEN FINAL
IMPLEMENTAR EL JUEGO DENOMINADO PAC-MAN USANDO NECESARIAMENTE LA CLASE MATRIZ, COLA, Y PILA.
FECHA DE PRESENTACION EL PRIMER DIA DE CLASES DESPUES DEL 19 DE JULIO.