Descarga la aplicación para disfrutar aún más
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
Compartir