0% encontró este documento útil (0 votos)
72 vistas13 páginas

Practica General Auxiliatura INF-131 II2021

Este documento presenta varios ejercicios prácticos sobre estructuras de datos como pilas, colas, múltiples pilas y colas, listas simples y dobles. Los ejercicios abarcan temas como ordenamiento, eliminación de elementos, agrupamiento y conteo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
72 vistas13 páginas

Practica General Auxiliatura INF-131 II2021

Este documento presenta varios ejercicios prácticos sobre estructuras de datos como pilas, colas, múltiples pilas y colas, listas simples y dobles. Los ejercicios abarcan temas como ordenamiento, eliminación de elementos, agrupamiento y conteo.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 13

Universidad Mayor de San Andres

Facultad de Ciencias Puras y Naturales


Carrera de Informática

INF-131
ESTRUCTURA DE DATOS Y ALGORITMOS

PRÁCTICA GENERAL

AUXILIARES:
INF - 131

Paralelo Auxiliar Horario Contacto Enlace Grupo


WhatsApp/Telegram

A Univ. Guarachi Vasquez Noemi Silvia Lunes 73055731 https://chat.whatsapp.com/Lxi


20:00-22:00 Ug47nykn163byoCB7YE

B Univ. Paucara Saca Sergio Alejandro Viernes 76236361 https://chat.whatsapp.com/LWf


10:00-12:00 oK4t7a4IGLrw2n5L3rU

C Univ. Choque Condori Luis Cesar Jueves 67119206 https://t.me/joinchat/PCHPwQ


16:00-18:00 eJmpk1Zjcx

LAB - 131

Paralelo Auxiliar Horario Contacto Enlace Grupo


WhatsApp/Telegram

A, B Univ. Mamani Apaza Luis Grover Miércoles 72089707 https://chat.whatsapp.com/B8q


18:00-20:00 w7g85etPIZft7XobItX
y
Viernes
16:00-18:00

C, D Univ. Meneces Zelaya David Josue Viernes 61120416 https://chat.whatsapp.com/GD


16:00-18:00 MXnVmYiIV0Mwzy1qYLHA

Instructivo
● Debe resolver los problemas que indique el auxiliar de su paralelo.
● Presentar al auxiliar correspondiente los ejercicios resueltos de forma
ordenada y a computadora.
● Cada ejercicio debe considerar el problema, su diagrama de clases y la
solución de los problemas.
Práctica General de Estructuras de Datos y Algoritmos INF - 131

TEMA: PILAS Y COLAS

1. Dada un pila de Cuadernos <marca, nroHojas, tamaño> se pide:


a. Ordenar los cuadernos ascendentemente por el nroHojas.
b. Contar los cuadernos con tamaño “oficio”.
c. Agrupar por la marca

2. De una granja se almacena en una pila Objetos Animal, <nombre, tipo,


cantidad> :
a. Contar todos los animales del tipo X.
b. Eliminar todos los animales del tipo Y.
c. Mostrar los animales en mayor cantidad

3. Sea una pila de números, se pide:


a. Llevar todo los números pares al principio de la pila.
b. Eliminar los primeros n números impares.
c. Contar los números repetidos en la pila.

4. Sean dos pilas de números, se pide intercambiar el primer elemento de


ambas pilas sin usar ninguna estructura auxiliar.

5. Sea una Pila de Estudiantes <nom, pat, mat, ci> y una Pila de evaluaciones
de los estudiantes <nroEvaluacion, ci, nota>

Nro. Evaluación Nota ci


1 30 6896596
2 60 7859391
3 70 94927134
4 55 94878282

a. Agrupar las evaluaciones de acuerdo al orden de los estudiantes en


la Pila Estudiante.
b. Ordena las evaluaciones de cada estudiante, de manera que se
mantienen agrupadas.

6. Dada una cola se le pide eliminar el o los elementos del medio.

7. Sea una cola, eliminar los elementos repetidos sin usar estructuras auxiliares.

8. Dada una cola de exámenes :


a. Ordenar de mayor a menor según la nota.
b. Mostrar la nota que más se repite.

Página 1
Práctica General de Estructuras de Datos y Algoritmos INF - 131

9. Dada una Cola de Personas <nombre, edad, libro>, cada Persona tiene un
objeto Libro <título, autor, nroPaginas> se pide eliminar aquellas Personas
que tengan un Libro con un número de páginas impar o si el título del libro
empieza en una vocal.

10. Sea una cola de Mascotas, y una cola de Atenciones de una clínica
veterinaria, Mascota <idMascota, nombre, sexo, tipo>, Atención <fecha,
idMascota>:
a. Mostrar el nombre de las mascotas que fueron atendidas en la clínica
veterinaria en la fecha X
b. Mostrar la(s) mascota(s) que fue atendida más veces en la clínica
veterinaria.
c. Contar mascotas “hembra” que fueron atendidas en la clínica
veterinaria.

TEMA: MÚLTIPLES PILAS/COLAS

1. Sea un Pila de Colas del Banco, donde cada Cola tiene Clientes<nombre, ci,
nroTurno>, se pide:
a. Eliminar de todas las colas, los clientes que tienen un turno impar.
b. Todos los clientes con un CI par, llevarlos a un cola.

2. Sea una múltiple cola de Personas <nombre, ci, edad, sexo> que esperan
recibir la segunda dosis de la vacuna contra COVID-19, se pide:
a. Se pide ordenar cada cola descendentemente por la edad de cada
persona.
b. Se pide llevar a todas las personas mayores de 65 años a una sola
cola.

3. Sea un multiple cola de mascotas <nombre, edad, sexo, tipo>, se pide:


a. Contar cuantas mascotas del tipo X y sexo hembra existen.
b. Eliminar a todas las mascotas de cada cola menores a 2 años.
c. Llevar a todas las mascotas que su nombre empieza por una letra
vocal, a la primera cola.

4. Sea una múltiple pila de Cuadernos <marca, nroHojas>, ordenar


alfabéticamente todo el conjunto de pilas por el nombre de la Marca, siendo
así que en la primera pila deben estar todos los cuadernos de una sola marca
y su marca debe ser la menor lexicográficamente.

5. Sea una múltiple cola de Animales <raza, edad,> del zoológico, se pide:
Liberar a todos los animales, para ello mover a todos los animales herbívoros

Página 2
Práctica General de Estructuras de Datos y Algoritmos INF - 131

a la primera cola, a los omnívoros a la segunda cola y por último a los


carnívoros a la tercera cola, al finalizar se te pide que ordenes cada cola por
su raza.

6. Sea una cola circular de Pilas de cadenas, se pide eliminar las cadenas
que tienen al menos una vocal.

7. Una empresa decidió registrar la hora de llegada y de salida de sus


empleados en cada una de sus sucursales, para ello se utilizó una Múltiple
Pila, donde cada pila almacenará la información de los empleados de
una sucursal, la información de cada empleado deberá de tener el nombre
de los empleados, su ci, su horario de ingreso, su horario de salida y una
Cola de Ingreso/Salida la cual almacenará la hora de ingreso y de salida
que marcó el empleado durante el mes de octubre.
Se le pide buscar al empleado con ci X y mostrar su información de las veces
en que ingresó tarde y las veces en las que salió mucho antes de su horario
de salida.

8. Sea una Cola de Zonas<nombre de zona, idzona> y una Múltiple Pila que
almacena las temperaturas <idzona, día, temperatura, precipitación>
registradas en un año, se pide:

a. Mostrar la fecha (mes y día) en que se presentó lluvia en la Zona de


nombre X (se presenta lluvia si es que la precipitación es mayor a
250).
b. Verificar si en el mes de marzo se presentaron temperaturas bajo cero
de la Zona de nombre X, si es así se pide eliminar tanto la Zona como
las temperaturas de la misma.
c. Mostrar el nombre de las zonas que presentaron lluvias.

9. Una hamburguesería maneja su información en las siguientes estructuras:


Una Cola de Clientes, la cual almacena CI y nombre de los clientes.
Una Múltiple Cola de Pedidos, donde cada cola almacena los pedidos de
cada cliente. Los pedidos del primer cliente están en la primera cola, del

Página 3
Práctica General de Estructuras de Datos y Algoritmos INF - 131

segundo cliente están en la segunda cola, del tercer cliente están en la


tercera cola, etc.
Cada pedido tiene el nombre del producto y una pila de nombres de
ingredientes que no quiere en su pedido.
Por tanto, la Múltiple Cola de Pedidos tendrán N colas y la cola de clientes
tendrán N clientes. Se pide:
a. Adicionar un nuevo pedido al cliente con ci X.
b. Dar preferencia a los clientes que hicieron el menor número de
pedidos, llevando adelante a estos clientes en la cola de clientes y la
múltiple cola de pedidos.

10. Para administración de los pedidos de los clientes de un restaurante, se


maneja las siguientes estructuras:
Cola Circular de Combos: nro_combo, descripción, precio, cola simple de
productos del combo.
Cola simple de productos del combo: nombres de los productos
Múltiple cola circular de pedidos: Almacena un conjunto de colas circulares
con la información de los pedidos de los clientes. Cada pedido de un cliente
tiene los datos de nombre cliente, fecha y una pila de pedidos.
Pila de pedidos: nro_combo, cantidad solicitada.
a. Mostrar los pedidos efectuados por el cliente X, que tengan al combo
con descripción Y
b. Calcular el costo de los pedidos de cada cliente de la fecha X y el
costo total al que asciende la venta de los pedidos de esa fecha.
c. Determinar el número de combos solicitados que tengan el producto X.

TEMA: LISTAS SIMPLES y DOBLES

1. Se tiene una Lista Simple de participantes en un sorteo de fin de gestión, de


cada participante se conoce nombre, edad, ci, dirección, celular.
a. Mostrar los datos del participante con nombre X
b. Cuántos participantes tienen la edad X
c. Eliminar a los participantes menores de edad (edad<18).

2. Dada una lista simple de estudiantes, donde cada nodo almacena los datos:
Nombre, Curso, Materia, Edad, CI. Se pide:
a. Mostrar a los estudiantes que tienen edad mayor a X.
b. Ordenar a los estudiantes de acuerdo al primer carácter del nombre.
c. Eliminar al estudiante con número de CI X.

3. Dada una lista simple de números, se pide:

Página 4
Práctica General de Estructuras de Datos y Algoritmos INF - 131

a. Intercambiar los números de las posiciones i y j.


b. Insertar k nuevos números después de cada número par
c. Invertir la lista.

4. Dada una Lista Simple que almacena objetos computadoras que tiene como
atributos (marca, modelo, precio).
a. Determinar la computadora más costosa.
b. Eliminar las computadoras de marca X.
c. Insertar una computadora en la posición i-ésima.

5. Sea una Lista Simple Circular de productos, donde cada nodo almacena
nombre, precio y stock.
a. Mostrar los productos con mayor precio
b. Llevar los nodos con precio X al principio de la Lista
c. Eliminar los productos agotados.

6. Sea una lista doble, que almacena la evaluación de exámenes <nombre,


nota, fecha>.
a. Verificar si existe más notas de aprobación que de reprobación
b. Mostrar a todos los que tengan una nota de aprobación.
c. Se pide eliminar a los estudiantes que abandonaron la materia
(abandonó nota = 0).

7. Sean dos listas dobles que almacena los dígitos de dos números enteros
largos
a. Calcular la suma de los números, almacenando los dígitos del
resultado en otra lista
b. Eliminar los dígitos pares de ambos números
c. Multiplicar un número por 2, obtener el resultado en otra lista

8. Una lista doble circular almacena objetos vehículos(placa, marca, color,


modelo)
a. Cuántos vehículos del color X existe
b. Llevar a los vehículos del color X al principio de la lista
c. Insertar k nuevos vehículos después del i-ésimo vehículo

9. Una veterinaria almacena a sus clientes en una lista doble cuyos nodos
almacena nombre y CI del cliente y una lista doble de las mascotas de estos
clientes cuyos nodos almacena ci del cliente, nombre de la mascota, tipo y
edad
a. Cuántas mascotas tiene cada cliente
b. Mostrar a las mascotas del cliente con nombre X
c. Eliminar a las mascotas del i-ésimo cliente
d. Ordenar a las mascotas según el orden de la lista de dueños.

Página 5
Práctica General de Estructuras de Datos y Algoritmos INF - 131

10. Se maneja el control de los huéspedes y habitaciones de un hotel de 5


estrellas mediante listas. Una lista doble que contiene objetos
habitación<Nrohabitacion, capacidad, costo> y una lista simple de objetos
huésped<Nombre, nrohabitacion, nroIntegrantes>
a. Verificar y mostrar si existe alguna habitación que está excediendo su
capacidad.
b. La habitación número X queda vacía, entonces se pide eliminar a los
huéspedes de dicha habitación.
c. Una familia de 3 miembros llegó al hotel, mostrar las habitaciones
libres con dicha capacidad
d. Agregar a la lista de huéspedes a la primera habitación libre a una
familia con 3 integrantes

TEMA: MÚLTIPLES LISTAS

1. Dada una lista doble normal de objetos farmacias<nombre, dirección,


regente, Lista de Medicamento> donde la Lista de medicamentos almacena
<nombre, marca, stock>
a. Eliminar los medicamentos con stock agotado de las farmacias.
b. Mostrar los medicamentos de la marca X de la farmacia i-esima.

2. Sea una lista circular de materias donde cada materia tiene una lista simple
de estudiantes. Realizar:
a. Mostrar a los estudiantes de la materia “INF-111”
b. Mostrar las materias en las que está inscrito el estudiante con ci X
c. Mostrar las materias con la mayor cantidad de estudiantes.

3. Crear una Múltiple Lista de Listas Circulares, en la primera lista almacenar el


primer término de la serie de Fibonacci, en la segunda los dos primeros
términos de la serie de Fibonacci, en la tercera los tres primeros y así
sucesivamente hasta las n listas, luego mostrar las listas generadas.
Finalmente eliminar el término X, si existe.

4. Dada una lista Múltiple de sucursales de supermercados (Dirección, Lista de


Empleados, teléfono), Empleado(nombre, edad, Lista de Ventas), Venta
(nombreProducto, precio, cantidad)Mostrar la sucursal que más productos
vendió.

5. Se tiene una Lista Simple grupos de trabajo con objetos Grupo <Nombre,
fechaDeCreacion, jefeGrupo, ListaDobleIntegrantes>, el jefeGrupo y los
Integrantes son Contacto <Nombre, NroCel>:
a. Mostrar a los integrantes del jefeGrupo X

Página 6
Práctica General de Estructuras de Datos y Algoritmos INF - 131

b. Agregar un nuevo Integrante al grupo de nombre X.

6. Dada una lista Doble Circular, cada nodo contiene la información de una
materia <NomMateria, sigla, Lista Simple Circular de Estudiantes> y una Lista
Simple Circular de calificaciones <ci, Puntaje>. La lista Simple Circular de
estudiantes almacena <Nombre, ci> se pide:
a. Mostrar los datos de los estudiantes que hayan reprobado.
b. Calcular el promedio de todos los estudiantes aprobados.

7. En un campeonato de fútbol ABC se controla la información a través de las


siguientes estructuras de datos:
Lista de Equipos: Almacena la información de los equipos, cada nodo
guarda: el nombre del Equipo y la Lista de sus jugadores.
Lista de Jugadores: Almacena datos de los jugadores, cada nodo guarda
información de un jugador: su nombre y posición (arquero, defensa, etc).
Lista de Fechas de Partidos: Donde se guarda la información de fechas de
Partidos, cada nodo guarda una fecha y una Lista de Partidos Jugados en
esa fecha.
Lista de Partidos Jugados: Cada nodo almacena nombreEquipoA,
nroGolesEquipoA, nombreEquipoB, nroGolesEquipoB.
a. Mostrar a los equipos que no tiene ningún partido ganado.
b. Mostrar a los jugadores de los equipos, cuyo partido jugado sea
empate

8. Los cursos actualización de LASIN, se controlan a través de Múltiples listas:


Lista de Cursos: Almacena nombre, fecha inicio, Instructor, Lista de
Estudiantes
Lista de Estudiantes: Almacena nombreCompleto, Nota
a. Mostrar el nombre del curso con más aprobados
b. Mostrar los cursos aprobados por el estudiante con nombre X

9. Se requiere controlar el índice de un libro organizado por capítulo con un


Múltiple Lista:
Lista de Capítulos: Numero, Titulo, NroPagina, Lista de Subtítulos
Lista de Subtítulos: Titulo, NroPagina
a. Mostrar los subtítulos del Capitulo número X
b. Verificar si existe el tema X (como título o subtítulo)

10. La gobernación de La Paz tiene un registro que está basado en listas:


Lista de Municipios (NomMun, Lista de zonas, antigüedad).
Lista de Zonas (NomZona, Lista de Familias, ubicación).
Lista de Familias (CantidadMiembros, Apellido).
Realizar:
a. Mostrar la zona en la que vive la familia con apellido X.

Página 7
Práctica General de Estructuras de Datos y Algoritmos INF - 131

b. Mostrar el nombre de la zona en la que se tienen más vecinos (se


toma en cuenta la cantidad de miembros de cada familia).
c. Encontrar al municipio más antiguo y agregarle una nueva zona.

11. Sea la lista de Docentes <nombre, Lista de pagos> y la lista de pagos <fecha,
monto> se pide:
a. Mostrar a los docentes que tuvieron algún sueldo mayor a 1000.
b. Verificar si el docente de nombre X recibió su pago de la fecha Y.

TEMA: RECURSIVIDAD

1. La sucesión de Fibonacci viene definida por la siguiente recurrencia:


𝐹𝑛+2 = 𝐹𝑛 + 𝐹𝑛+1

Con valores iniciales 𝐹0 = 0 𝑦 𝐹1 = 1

Calcular el enésimo término de la sucesión recursivamente


Ejemplo
Entrada:
2
Salida:
1
2. Sea una matriz NxN de cadenas:
a. Mostrar la Diagonal Principal
b. Verificar si en la i-esima fila existe la cadena X
c. Intercambiar la fila i con la columna j

3. Implemente una función recursiva que verifique si una cadena es un


palíndromo. (Un palíndromo es una cadena que se lee igual adelante que
atrás)
Ejemplo
Entrada:
BOB
Salida:
Es palíndromo

4. Sea un vector de números, recursivamente resolver:


a. ¿Cuántos números pares tiene el vector?
b. Mostrar el número más grande del vector
c. Verifica la existencia de un número x en el vector.

Página 8
Práctica General de Estructuras de Datos y Algoritmos INF - 131

5. Dada una Pila A de números. Recursivamente:


a. Contar los números impares
b. Si tuviéramos una segunda Pila B de números, verificar si las dos pilas
son iguales

6. Sea una cola que almacena Smartphones <marca, modelo, capacidad de


almacenamiento (en GB), stock> recursivamente:
a. Mostrar a los a los Smartphones cuyo almacenamiento es mayor a 16
GB.
b. Verificar si existe algún Smartphone de modelo Y.
c. Sumar el stock de los Smartphones de la marca Z.

7. Sea una lista simple de números:


a. Cuántas veces se repite el número X.
b. Mostrar los números de la lista que son múltiplos de X

8. Se gestiona una lista que tiene los resultados de partidos de fútbol


<Equipo1, GolesEquipo1, Equipo2, GolesEquipo2>
a. ¿Cuántos partidos ganó el equipo X? También mostrar los datos de
cada partido ganado por X.
b. Mostrar los partidos terminados en empate.

9. Sean las siguientes listas:


● Lista Simple de materias<nombreMateria, sigla, listaParalelos>
● Lista Doble de paralelos<códigoParalelo, horario (mañana, tarde o
noche), listaEstudiantes>
● Lista Simple de estudiantes<nombre, ci>
Se pide recursivamente:
a. Mostrar el paralelo de cada materia que tenga horario en la tarde.
b. Mostrar las materias en las que se encuentra inscrito el estudiante
con ci X

10. Dada una lista doble normal de objetos ​Restaurante<nombreRestaurante,


dirección, dueño, reputación (puede ser de 1 a 5 estrellas), ListaPlatos>
donde ListaPlatos es una lista simple normal de objetos
Plato<nombrePlato, precio>. Recursivamente:
a. Mostrar los platos con precio menor al promedio de cada
Restaurante.
b. Mostrar el menú de los restaurantes de la más alta reputación.

TEMA: ÁRBOLES

1. El recorrido en preorden de un determinado árbol binario es:


A,B,D,F,G,C,E,H,I y en inorden F,G,D,B,A,C,E,I,H

Página 9
Práctica General de Estructuras de Datos y Algoritmos INF - 131

Se pide:
a. Dibujar el árbol binario.
b. Escribir el recorrido en postorden del árbol construido

2. Escriba el resultado del recorrido preorden, inorden, postorden y recorrido por


niveles del siguiente árbol:

3. Sean un Árbol de cadenas:


a. Programe una función que cuente el número de nodos en el nivel X del
árbol
b. Programe una función para eliminar los nodos hoja que sean hijos
únicos (que su nodo padre solo tenga de hijo a ese nodo)

4. Dado un árbol binario normal de letras, se pide:


a. Contar las vocales del árbol
b. Hallar el peso (nro. de nodos terminales) del subárbol que se
desprende desde el dato Z.
Ejemplo
Entrada:
R
Salida:
2

5. Sea un árbol binario donde cada nodo almacena <edad, nombre, tipo> de las
Mascotas que se atiende en una veterinaria, se pide:

Página 10
Práctica General de Estructuras de Datos y Algoritmos INF - 131

a. Mostrar a los perros más jóvenes


b. Identificar el subárbol Izquierdo o Derecho del árbol donde está la
mascota más vieja.

6. Sea un árbol binario de búsqueda cuyos nodos almacena Medicamentos


(nombre, laboratorio, precio)
a. Verificar si existen medicamentos del laboratorio “Pfizer”
b. Mostrar los nodos medicamento con un solo descendiente
c. Mostrar los “Ibuprofenos” con precio menores a X

7. Sea un Árbol Binario de Búsqueda que almacena números naturales, se pide:


a. ¿Cuál es la diferencia entre el dato mayor y X si existe?
b. Dado un valor X, busqué en el árbol un nodo que contenga como dato
el valor X y retorna su nodo padre.
Ejemplo
Entrada:
60
Salida:
40

8. Sea un árbol binario de objetos “Materia”, cada materia tiene su sigla y un


árbol de objetos Estudiante <nombre, nota, tamaño>
a. Cuantos aprobados y reprobados hay en cada materia.
b. Mostrar las materias con el mejor promedio de aprobación.

9. Sea un árbol de Archivos<nombre, extensión, tamaño > Se pide:


a. Eliminar los nodos hoja que sean hijos únicos (que su nodo padre solo
tenga de hijo a ese nodo).
b. Mostrar los archivos del nivel K del subárbol derecho.

10. Sea un Árbol binario de búsqueda que almacena temperaturas de una


ciudad. Se pide:

Página 11
Práctica General de Estructuras de Datos y Algoritmos INF - 131

a. Mostrar el subárbol a partir de la temperatura X.


b. Mostrar toda la ruta de recorrido, hasta encontrar X, si existe.
Ejemplo
Entrada: X = 72.
Salida: {100, 80, 72}

Página 12

También podría gustarte