Logo Studenta

Listas Enlazadas: Pruebas e Algoritmos

¡Estudia con miles de materiales!

Vista previa del material en texto

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE COMPUTACIÓN Y SIMULACIÓN DE SISTEMAS
ESTRUCTURAS DE DATOS I
TITULO DEL TEMA
TALLER N°3: Aplicaciones de las Listas Enlazadas
Prof. Yolanda de Miguelena
INTEGRANTES:
Rivera Ruben 8-1003-856
Sánchez Omar 8-974-1975
Murcia Luis 8-894-1472
Alvarado Jair 8-1001-780
FECHA:
11/11/2022
Problema N. 1
Realizar la prueba de escritorio del algoritmo creador de Nodos en una lista
enlazada con las siguientes informaciones para cada Nodo: Sara, Carlos,
Luna. Utilice para cada dato a crear, las direcciones que se encuentran
almacenada en una estructura de pila:
Pila
50 40 30 20 10
1 2 3 4 5
Al finalizar la prueba de escritorio muestre por medio de dibujos como
queda la Lista (mostrar todas sus partes) e indique si la creación de cada
nodo se hace al inicio o al final de la lista.
CREA_LISTA_ENLAZADA
{P y Q son variables de tipo puntero. P apuntará al inicio de la lista}
CREA (P) {Crea el primer nodo de la lista}
LEER (P->Info)
P->SIG = NULL
MIENTRAS (deseo ingresar datos a la lista)
CREA (Q)
LEER (Q->INFO) 
Q->SIG = NULL
Q->SIG = P
P = Q
FIN_MIENTRAS
P CREA(P) LEER(P->INFO) P->SIG Q CREA(Q) LEER(Q->INFO) Q->SIG
null 10 Sara null
10
20 20 20 carlos null
10
30 30 30 luna null
20
SE CREA DESDE EL FINAL DE LA LISTA
sara null
10
carlos 10 ————> sara null
20 10
luna 20 ————> carlos 10 ————> sara null
30 20 10
Problema N. 2
Utilice la lista enlazada creada en el problema N. 1 y el valor de P para
hacer la prueba de escritorio, del algoritmo Inserta_Nodo. Los datos para
insertar son: Jaime y Marta. Para las direcciones, utilice las que quedan
en la pila. Muestre gráficamente como queda la lista con los nuevos datos
insertados (Jaime y Marta) e indique si se insertan Inicio o al Final de la
Lista.
INSERTA_NODO (P, DATO) 
{
{P es una variable puntero que contiene la dirección del primer nodo y
Dato contiene la información que se quiere insertar}
{Q y T son variables de tipo puntero}
T = P 
MIENTRAS (T->SIG ≠ NULL)
{
T = T->SIG
}
CREA (Q)
Q->Info = DATO
Q->SIG = NULL
T->SIG = Q
}
P T (T->SIG) DATO Q CREA(Q) Q->INFO Q->SIG
30 30 (20) jaime
20 (10)
10 (null)
40 40 40 jaime null
30 30 (20) marta
20 (10)
10 (40)
40 (null)
50 50 50 marta null
luna 20 ————> carlos 10 ————> sara null
30 20 10
luna 20 ——> carlos 10 ——> sara 40 ——> jaime null
30 20 10 40
luna 20 ——> carlos 10 ———> sara 40 ——> jaime 50 ——> marta null
30 20 10 40 50
SE INSERTA AL FINAL DE LA LISTA
Problema N. 3
Para la siguiente descripción del segmento de algoritmo y utilizando la
siguiente lista enlazada que inicia en P = 10, Q = 0 y X = 300, realice la
Prueba de Escritorio y luego responda a los puntos 1, 2 y 3.
// Lista (*P, entero X)
// P y Q son variables tipo punteros. P apunta al primer nodo de la lista.
/*Previamente el Registro Nodo fue declarado con los campos Info
(entero) y Liga (Puntero). */
Q = P
Mientras ((Q ≠ Null) y (Q->Info ≠ X))
{
Q = Q->Liga
}
Si (Q = Null)
Entonces
{
Imprimir (“El elemento No se encuentra en la Lista”)
Sino
Imprimir (“Elemento Encontrado”)
}
P = 10
200 5 100 15 300 Null
10 5 15
Prueba de Escritorio
X P Q Q-> INFO Q-> LIGA
300 10 0
10 200 5
5 100 15
15 300 null
elemento
encontrado
1. Luego de realizada la prueba de escritorio escriba que función hace el
segmento del algoritmo.
RESPUESTA: ESTÁ BUSCANDO UN ELEMENTO DENTRO DEL
NODO
2. ¿Cuántas veces la variable puntero Q cambió de valor sin contar el
0?
RESPUESTA: 3
3. Escriba solamente el contenido del penúltimo Q->Info, registrado en
su prueba de escritorio.
RESPUESTA: 300
Powered by TCPDF (www.tcpdf.org)Powered by TCPDF (www.tcpdf.org)
http://www.tcpdf.org

Continuar navegando