Práctica 8: Vectores de punteros II

Anuncio
Práctica 8: Vectores de punteros II
Resumen
Continuamos con los vectores de punteros, esta vez con vectores de punteros a los nodos de una lista. Utilizando el
vector de punteros realizaremos la ordenación de los nodos de la lista utilizando la información almacenada en uno de
los campos de datos.
1.
Introducción
Partiendo de la base de datos almacenada en un fichero binario vamos a realizar un programa con las siguientes
opciones de menú:
1.2.3.4.5.-
Cargar lista de un fichero binario
Imprimir lista
Crear e inicializar el vector de punteros
Ordenar por campo de referencia
Imprimir siguiendo el vector
En la opción 1 los datos se cargan desde fichero binario (sin palabras clave). Con la opción 2 vemos los datos en
orden de entrada.
En la opción 3 creamos un vector de punteros de dimensión igual al número de nodos de la lista e inicializamos los
punteros de acuerdo con el orden de la lista (primer puntero del vector al primer nodo de la lista, etc.).
En la opción 4 usamos el método de la burbuja sobre el vector de punteros para obtener una ordenación por el campo
de referencia de los libros. El pseudocódigo del método de la burbuja es:
desde i=1 hasta N-1
desde j=N-1 hasta 1
si vec[j-1] > vec[j]
intercambia vec[j-1] con vec[j]
fin si
fin desde
fin desde
En la opción 5 listamos usando el vector de punteros.
2.
División en funciones
Las nuevas funciones a usar son:
CreaVectorPunteros. Reserva espacio para el vector de punteros, y los hace apuntar a los nodos de la lista.
ImprimeVectorPunteros. Imprime los nodos de la lista siguiendo el vector de punteros.
El resto de funciones quedan como estaban.
El programa estará dividido en módulos.
1
Descargar