Connaissances Informatiques >> programmation >> Programmation Java >> Content
  Derniers articles
  • Comment changer Java 1.6 pour Java 1…
  • Maximum Heap Size dans JVM 
  • Comment faire pour convertir personn…
  • Pas de grandes classes trouvés dans…
  • Types de données pour JPA DataSourc…
  • Comment configurer Ant avec Eclipse …
  • Comment faire pour supprimer les dou…
  • Comment faire pour démarrer Tomcat …
  • Comment lire un champ CLOB 
  • Comment utiliser CLOB en Java 
  •   Programmation Java
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Programmation Java

    Comment fusionner deux listes d'ADT Ordre

    Un type abstrait de données ( ADT) de la liste, ou liste chaînée comme il est plus communément appelé, est l'une des structures de données fondamentales en informatique et l'une des premières solutions de rechange à la simple tableau appris par un étudiant en informatique . Bien qu'il sacrifie la capacité de se déplacer au milieu de la liste , sans chercher à travers la première liste , la liste ADT rend trivialement facile à agrandir et réduire les données stockées. Ce code est implémenté en Java , depuis intégré dans Lié la structure de données de liste de Java nous permet d'obtenir directement au point , mais la même logique pourrait être appliquée avec un minimum de modifications dans une autre langue C -like. Instructions
    1

    Créez vos deux listes chaînées et les initialiser avec des données triées en collant le texte suivant dans un fichier Java:

    LinkedList list1 = new LinkedList ( ) ;

    LinkedList list2 = new LinkedList ();

    for (int x = 0; x < 100; x + +) vous avez deux listes chaînées remplis de nombres aléatoires qui ont été triés
    2

    créer une nouvelle liste Lié à tenir la liste fusionnée en collant ce qui suit: .

    LinkedList fusionné = new LinkedList ();
    3

    Mettre en place d'une simple boucle while . Cette boucle se poursuivra tant que les deux listes ont au moins un élément en eux, et il se déplace le plus petit des premiers éléments de la liste fusionnée : .

    //Si les deux listes ne sont pas vides

    tout ( ! list1.isEmpty () && ! ​​list2.isEmpty ()) {

    if ( list1.peek () < = list2.peek ()) {

    fusionné . add ( list1.pop ());

    } else {

    merged.add ( list2.pop ());

    }

    }

    la commande " Peek "
    regarde l'élément au début de la liste , alors que " Pop " à la fois se penche sur l'élément et le supprime . Lorsque la comparaison est faite, vous ne voulez coup d'oeil au sommet de la liste pour voir qui est plus petit . Quand vient le temps de fusionner les listes , vous voulez emporter la valeur supérieure et le mettre sur les nouvelles listes .
    4

    finir le travail. Dès que soit la liste est vide, il n'est pas nécessaire de continuer à faire des comparaisons . Par conséquent , les anciennes extrémités de la boucle , et une autre boucle est créé pour combler le reste de la liste fusionnée avec le reste des données de la dernière liste :

    //Alors que la première liste n'est pas vide

    tandis que {

    merged.add ( list1.pop ());
    de

    } ( list1.isEmpty () !)

    //alors que la deuxième liste n'est pas vide . Photos

    tout {

    merged.add ( list2.pop ());
    de

    } ( list2.isEmpty () !)
    5

    Imprimez les résultats de sorte que vous pouvez consulter la liste fusionnée et s'assurer qu'elle a bien fonctionné :

    int x = 1;

    pour ( Double Y : fusionné ) { System


    . out.println ( x + "" + y);

    x + +;

    }

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment créer UML à partir du code Java 
  • La hauteur d'un arbre binaire en Java 
  • Android SDK View Editor 
  • Comment utiliser la date en Java 
  • Les différences entre les JSP et JSPF 
  • Comment mettre la barre de défilement en Java 
  • La fonction d'entrée du scanner en Java 
  • Fonction d'impression en Java 
  • Comment calculer votre score au Scrabble en Java 
  • Comment faire défiler un Grails application en utilisant NetBeans 
  • Connaissances Informatiques © http://www.ordinateur.cc