Upload
eduardo-robayo
View
216
Download
0
Embed Size (px)
DESCRIPTION
Lista Generica Ordenada NUEVO
Citation preview
Ingeniero Eduardo Robayo
1
ESTRUCTURAS DE DATOS
TEMA: LISTA GENERICA ORDENADA
Aunque existen estrategias para ordenar listas desordenadas, existe una estrategia que permite
ordenar la lista desde el comienzo, esto es, que a medida que se van ingresando los nodos, ellos se
van ordenando, ya sea de forma ascendente o de forma descendente.
Ejemplo, crear una lista de enlace simple y que ingrese los siguientes datos enteros en el siguiente
orden:
10, 5, 7, 50
Entonces después de ingresar los datos, la lista debe quedar ordenada de la siguiente forma:
5, 7, 10, 50,
Esto nos lleva a entender que con ésta estrategia no se requiere de un método para ordenar la
lista después de que los nodos han sido ingresados, sino que el método “Ingresar” es el que se
encarga de ir ordenando los nodos a medida que se van ingresando.
Analicemos el método “Insertar” para generar una lista ordenada.
Ingeniero Eduardo Robayo
2
Método Insertar (Entero X)
Crear nuevo nodo
Pasarle el valor que llega al nuevo nodo
Si la lista está vacía
El nuevo nodo se convierte en el nodo raíz
De lo contrario
Si el nuevo es menor que raíz
Entonces se agrega antes de la actual raíz
De lo contrario
Se crean dos nodos
Nodo actual //para recorrer la lista
Nodo anterior//para saber el nodo anterior al actual
Los nodos actual y anterior empiezan en raíz
Haga mientras (nuevo >= actual && actual.sig !=null)
Anterior = actual
Actual = actual.siguiente
Fin haga mientras
Si nuevo >= actual
Actual.siguiente = nuevo
De lo contrario
Nuevo.siguiente=actual
Anterior.siguiente=nuevo
Fin si
Fin si
Fin si