| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    Cómo combinar dos listas ADT Ordenado
    un tipo abstracto de datos ( TAD ), una lista o una lista vinculada como se le llama comúnmente , es una de las estructuras de datos fundamentales de la informática y una de las primeras alternativas a la simple array aprendido por un estudiante de informática . A pesar de que sacrifica la capacidad de moverse a la mitad de la lista sin tener que buscar a través de la primera lista , la lista ADT hace trivialmente fácil de ampliar y reducir el tamaño de los datos almacenados. Este código se implementa en Java , ya incorporado en la estructura de datos vinculada de Java nos permite llegar directamente al punto , pero la misma lógica podría aplicarse con la modificación mínima en cualquier otro lenguaje similar a C . Instrucciones
    1

    Crea tus dos listas enlazadas e inicializar con algunos datos ordenados pegando lo siguiente en un archivo Java:

    LinkedList list1 = new LinkedList ( ) ;

    LinkedList list2 = new LinkedList ();

    for (int x = 0 ; x < 100 ; x + +) tiene dos listas enlazadas llenos de números aleatorios que han sido ordenados
    2

    Crear una nueva lista enlazada para mantener la lista combinada pegando el siguiente : .

    LinkedList fusionado = new LinkedList ();
    3

    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 .
    4

    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 ( !))
    5

    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 + + ; }



    Previous :

    next :
      Artículos relacionados
    ·Cómo crear un servicio web utilizando Axis 
    ·Cómo aprender Java 6 
    ·Cómo utilizar el Archivo Leer en Java 
    ·Función de impresión en Java 
    ·El código Java que comprueba el valor de entrada con e…
    ·Cómo introducir una cadena en Java 
    ·Cómo hacer para cuadros combinados en Java 
    ·Cómo cerrar un JFrame en Java con un botón 
    ·¿Cómo puedo hacer una lista de Hibernate no cuenta co…
    ·Cómo multiplicar dos números enteros de varios dígit…
      Artículos destacados
    ·Cómo agregar archivos JAR a un proyecto Android 
    ·Cómo probar con PHP 
    ·¿Cómo revertir los elementos de una matriz en C 
    ·Cómo depurar código PHP en VS2008 
    ·Cómo cambiar y redirigir un URL con Java 
    ·Cómo abrir un formulario PDF Uso de PHP 
    ·Cómo probar algoritmos numéricos 
    ·Cómo concatenar en DB2 SQL 
    ·¿Qué es un bloque de PHP 
    ·Cómo extraíble Java 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com