1
Crea tus dos listas enlazadas e inicializar con algunos datos ordenados pegando lo siguiente en un archivo Java:
LinkedList LinkedList for (int x = 0 ; x < 100 ; x + +) tiene dos listas enlazadas llenos de números aleatorios que han sido ordenados Crear una nueva lista enlazada para mantener la lista combinada pegando el siguiente : . LinkedList Establecer una simple bucle while . Este bucle se procederá siempre y cuando ambas listas tienen al menos un elemento en ellos, y se moverá el más pequeño de los elementos principales de la lista resultante de la fusión : . //Si bien ambas listas no están vacías while (! list1.isEmpty () && ! list2.isEmpty () ) { if ( list1.peek () < = list2.peek ()) { fusionó . add ( list1.pop ()); } else { merged.add ( list2.pop ()); } } el comando " Peek " se ve en el elemento en el frente de la lista, mientras que el " Pop ", ambas se ve en el elemento y lo elimina . Cuando se hace la comparación, sólo desea dar un vistazo a la parte superior de la lista para ver que es más pequeño . Cuando llega el momento de unificar las listas , quiere quitarle el valor superior y lo puso en las nuevas listas . terminar el trabajo. Tan pronto como sea lista está vacía , no hay ninguna necesidad de seguir haciendo comparaciones . Por lo tanto , los viejos extremos de bucle , y otro bucle se crea para llenar el resto de la lista resultante de la fusión con los datos restantes de la última lista : //Mientras que la primera lista no está vacía mientras { merged.add ( list1.pop ()); } ( list1.isEmpty ( !)) //mientras que la segunda lista no está vacía . while { merged.add ( list2.pop ()); } ( list2.isEmpty ( !)) Imprima los resultados para que pueda inspeccionar la lista combinada y asegurarse de que funcionaba correctamente : int x = 1 ; de (Doble y: fusionado ) { sistema. out.println (x + " " + y); x + + ; }
2
3
4
5