Ejercicios Propuestos de Listas Enlazadas

2
EJERCICIOS PROPUESTOS DE LISTAS ENLAZADAS 1. Función que calcule el número de elementos de una lista: La idea de este algoritmo es bastante sencilla, lo que tendremos q hacer para ver la longitud de una lista es simplemente recorrer la lista hasta el final e ir contando el número de saltos. El principal motivo por el que deberíamos implementar es que nos permite aprender y comprender el manejo de los nodos. 2. Invertir una lista enlazada: Implementar un método dentro de la lista enlazada que permita invertir los datos almacenados en una lista enlazada, es decir que el primer elemento pase a ser el último y el último pase a ser el primero, que el segundo sea el penúltimo y el penúltimo pase a ser el segundo y así sucesivamente. 3. Implementar el método de búsqueda en la clase lista, el cual debe retornar el número de veces que se encuentra el dato dentro de la lista. En caso de no encontrarse, el método debe mostrar un mensaje indicando que el dato no fue encontrado. El parámetro de entrada del método es el valor que se desea buscar. 4. Crear una lista enlazada con 50 números enteros, del 1 al 999 generados aleatoriamente. Una vez creada la lista, se deben eliminar los nodos que estén fuera de un rango de valores leídos desde el teclado. 5. Crear un programa que maneje dos listas enlazadas de elementos que almacenen datos de tipo enteros. La primera se deben almacenar sólo los números primos, y se agregan por el final. La segunda deben contener sólo números Armstrong, se agregan por el inicio de la lista. Al final, mostrar: a. El número de datos insertados en cada lista. b. Mostrar un mensaje indicando la lista que contiene más elementos. c. Mostrar todos los datos insertados en las listas. 6. Crear un programa que maneje el registro de los estudiantes de la unidad curricular de Redes III utilizando listas enlazadas. Los estudiantes aprobados deben insertarse por el inicio y los reprobados por el final de la lista. Los datos requeridos por cada estudiante son los siguientes: cédula, nombre, apellido, correo, nota definitiva (Escala: 1-10). El programa debe permitir realizar las operaciones de: a. Agregar estudiante. b. Buscar estudiante por cédula. c. Eliminar un estudiante. d. Total estudiantes aprobados, e) total estudiantes reprobados. 7. Crear un programa que permita llevar el registro de los vehículos del estacionamiento del Área de Ingeniería de Sistemas de la Universidad utilizando como estructura de almacenamiento listas enlazadas. Los datos solicitados por cada vehículo son: placa,

description

listas estructura de datos

Transcript of Ejercicios Propuestos de Listas Enlazadas

  • EJERCICIOS PROPUESTOS DE LISTAS ENLAZADAS

    1. Funcin que calcule el nmero de elementos de una lista:

    La idea de este algoritmo es bastante sencilla, lo que tendremos q hacer para ver la longitud de

    una lista es simplemente recorrer la lista hasta el final e ir contando el nmero de saltos. El

    principal motivo por el que deberamos implementar es que nos permite aprender y comprender

    el manejo de los nodos.

    2. Invertir una lista enlazada:

    Implementar un mtodo dentro de la lista enlazada que permita invertir los datos

    almacenados en una lista enlazada, es decir que el primer elemento pase a ser el ltimo y el

    ltimo pase a ser el primero, que el segundo sea el penltimo y el penltimo pase a ser el

    segundo y as sucesivamente.

    3. Implementar el mtodo de bsqueda en la clase lista, el cual debe retornar el nmero de

    veces que se encuentra el dato dentro de la lista. En caso de no encontrarse, el mtodo debe

    mostrar un mensaje indicando que el dato no fue encontrado. El parmetro de entrada del

    mtodo es el valor que se desea buscar.

    4. Crear una lista enlazada con 50 nmeros enteros, del 1 al 999 generados aleatoriamente. Una

    vez creada la lista, se deben eliminar los nodos que estn fuera de un rango de valores ledos

    desde el teclado.

    5. Crear un programa que maneje dos listas enlazadas de elementos que almacenen datos de

    tipo enteros. La primera se deben almacenar slo los nmeros primos, y se agregan por el

    final. La segunda deben contener slo nmeros Armstrong, se agregan por el inicio de la lista.

    Al final, mostrar:

    a. El nmero de datos insertados en cada lista.

    b. Mostrar un mensaje indicando la lista que contiene ms elementos.

    c. Mostrar todos los datos insertados en las listas.

    6. Crear un programa que maneje el registro de los estudiantes de la unidad curricular de

    Redes III utilizando listas enlazadas. Los estudiantes aprobados deben insertarse por el

    inicio y los reprobados por el final de la lista. Los datos requeridos por cada estudiante son

    los siguientes: cdula, nombre, apellido, correo, nota definitiva (Escala: 1-10). El programa

    debe permitir realizar las operaciones de:

    a. Agregar estudiante.

    b. Buscar estudiante por cdula.

    c. Eliminar un estudiante.

    d. Total estudiantes aprobados, e) total estudiantes reprobados.

    7. Crear un programa que permita llevar el registro de los vehculos del estacionamiento del

    rea de Ingeniera de Sistemas de la Universidad utilizando como estructura de

    almacenamiento listas enlazadas. Los datos solicitados por cada vehculo son: placa,

  • marca, modelo, ao y precio. El programa debe permitir realizar las siguientes

    operaciones:

    a. Agregar vehculo.

    b. Buscar vehculo por placa.

    c. Ver vehculos por ao.

    d. Ver todos los vehculos registrados.

    e. Eliminar carro registrado.

    8. Crear un programa que maneje N cantidad de datos de tipo real en una lista. Una vez

    cargados los datos en lista, el programa debe calcular el promedio de todos los datos

    cargados. Posteriormente, el programa debe cargar los datos menores o igual al promedio en

    una segunda lista, y los mayores en una tercera lista. Al finalizar este proceso, el programa

    debe mostrar lo siguiente:

    a. Los datos cargados en la lista principal.

    b. El promedio.

    c. Los datos cuyo valor sea igual o menor al promedio de todos los datos.

    d. Los datos que sean mayores al promedio de todos los datos.

    9. Crear un programa que maneje N cantidad de datos de tipo entero en dos listas por el inicio.

    Debe existir un ciclo de carga para la primera lista y otro ciclo de carga para la segunda lista.

    Una vez cargados los datos en las listas, el programa debe comparar las dos listas para

    verificar si ambas listas son iguales en tamao y contenido, es decir que si tienen la misma

    cantidad de datos y si los datos estn cargados en el mismo orden. Una vez realizada, la

    verificacin. El programa debe mostrar:

    a. Si las listas son iguales en tamao y en contenido.

    b. Si las listas son iguales en tamao pero no en contenido.

    c. No tienen el mismo tamao ni contenido.