Exercice Java Corrigé sur les Collections – PriorityQueue
Avec des exercices corrigés en Java, vous pratiquerez divers concepts du langage de programmation Java. Vous commencerez par des exercices Java de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Écrire un programme Java pour créer une file d’attente prioritaire (PriorityQueue), ajouter quelques noms (chaînes) et afficher les éléments de la file d’attente prioritaire (PriorityQueue).
Exemple de sortie:
Éléments de la file d'attente prioritaire: [Alex, Ali, Jean, Bob, Denis]
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("Éléments de la file d'attente prioritaire:"); System.out.println(q); } }
Sortie:
Éléments de la file d'attente prioritaire: [Alex, Ali, Jean, Bob, Denis]
Exercice 2:
Écrire un programme Java pour parcourir tous les éléments de la file d’attente prioritaire.
Exemple de sortie:
Éléments de la file d'attente prioritaire: Alex Ali Jean Bob Denis
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("Éléments de la file d'attente prioritaire:"); // Parcourir la file d'attente prioritaire for (String e : q) { System.out.println(e); } } }
Sortie:
Éléments de la file d'attente prioritaire: Alex Ali Jean Bob Denis
Exercice 3:
Écrire un programme Java pour insérer un élément donné dans une file d’attente prioritaire.
Exemple de sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Après l'insertion: [Alex, Ali, Jean, Bob, Denis, Olivier]
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File d'attente originale: "+ q); // Insère l'élément spécifié dans la file d'attente prioritaire. q.offer("Olivier"); System.out.println("Après l'insertion: "+ q); } }
Sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Après l'insertion: [Alex, Ali, Jean, Bob, Denis, Olivier]
Exercice 4:
Écrire un programme Java pour ajouter tous les éléments d’une file d’attente prioritaire à une autre file d’attente prioritaire.
Exemple de sortie:
File d'attente 1:[Alex, Ali, Jean, Bob, Denis] File d'attente 2:[Thom, Yohan, Thomas] Nouvelle file d'attente: [Alex, Ali, Jean, Bob, Denis, Thom, Yohan, Thomas]
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire 1 vide PriorityQueue<String> q1 = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire 1 q1.add("Alex"); q1.add("Bob"); q1.add("Jean"); q1.add("Ali"); q1.add("Denis"); System.out.println("File d'attente 1:"+ q1); // Créer une file d'attente prioritaire 2 vide PriorityQueue<String> q2 = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire 2 q2.add("Thomas"); q2.add("Yohan"); q2.add("Thom"); System.out.println("File d'attente 2:"+ q2); q1.addAll(q2); System.out.println("Nouvelle file d'attente: "+ q1); } }
Sortie:
File d'attente 1:[Alex, Ali, Jean, Bob, Denis] File d'attente 2:[Thom, Yohan, Thomas] Nouvelle file d'attente: [Alex, Ali, Jean, Bob, Denis, Thom, Yohan, Thomas]
Exercice 5:
Écrire un programme Java pour supprimer tous les éléments d’une file d’attente prioritaire.
Exemple de sortie:
File d'attente originale:[Alex, Ali, Jean, Bob, Denis] Nouvelle file d'attente: []
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File d'attente originale: "+ q); // Supprimer tous les éléments de la file d'attente prioritaire q.clear(); System.out.println("Nouvelle file d'attente: "+ q); } }
Sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Nouvelle file d'attente: []
Exercice 6:
Écrire un programme Java pour compter le nombre d’éléments dans une file d’attente prioritaire.
Exemple de sortie:
File prioritaire originale: [Alex, Ali, Jean, Bob, Denis] Taille de la file prioritaire: 5
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File prioritaire originale:"+ q); System.out.println("Taille de la file prioritaire: " + q.size()); } }
Sortie:
File prioritaire originale: [Alex, Ali, Jean, Bob, Denis] Taille de la file prioritaire: 5
Exercice 7:
Écrire un programme Java pour comparer deux files d’attente prioritaires.
Exemple de sortie:
File d'attente 1: [Alex, Ali, Jean, Bob, Denis] File d'attente 2: [Alex, Denis, Yohan, Thomas, Thom] Oui Non Non Non Oui
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire 1 vide PriorityQueue<String> q1 = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire 1 q1.add("Alex"); q1.add("Bob"); q1.add("Jean"); q1.add("Ali"); q1.add("Denis"); System.out.println("File d'attente 1:"+ q1); // Créer une file d'attente prioritaire 2 vide PriorityQueue<String> q2 = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire 2 q2.add("Alex"); q2.add("Thomas"); q2.add("Yohan"); q2.add("Thom"); q2.add("Denis"); System.out.println("File d'attente 2:"+ q2); // Afficher le résultats de la comparaison for (String e : q1){ System.out.println(q2.contains(e) ? "Oui" : "Non"); } } }
Sortie:
File d'attente 1: [Alex, Ali, Jean, Bob, Denis] File d'attente 2: [Alex, Denis, Yohan, Thomas, Thom] Oui Non Non Non Oui
Exercice 8:
Écrire un programme Java pour récupérer le premier élément de la file d’attente prioritaire.
Exemple de sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Le premier élément est: Alex
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File d'attente originale: "+ q); System.out.println("Le premier élément est: "+ q.peek()); } }
Sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Le premier élément est: Alex
Exercice 9:
Écrire un programme Java pour récupérer et supprimer le premier élément.
Exemple de sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Supprime le 1er élément: Alex Après suppression du 1er élément: [Ali, Bob, Jean, Denis]
import java.util.PriorityQueue; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File d'attente originale:"+ q); System.out.println("Supprime le 1er élément: "+q.poll()); System.out.println("Après suppression du 1er élément: "+ q); } }
Sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] Supprime le 1er élément: Alex Après suppression du 1er élément: [Ali, Bob, Jean, Denis]
Exercice 10:
Écrire un programme Java pour convertir une file d’attente prioritaire en une ArrayList contenant tous ses éléments.
Exemple de sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] ArrayList: [Alex, Ali, Jean, Bob, Denis]
import java.util.*; public class Main { public static void main(String[] args) { // Créer une file d'attente prioritaire vide PriorityQueue<String> q = new PriorityQueue<String>(); // Utiliser la méthode add() pour ajouter des valeurs dans la // file d'attente prioritaire q.add("Alex"); q.add("Bob"); q.add("Jean"); q.add("Ali"); q.add("Denis"); System.out.println("File d'attente originale:"+ q); // Convertir une file prioritaire en une ArrayList List<String> arr = new ArrayList<String>(q); System.out.println("ArrayList: "+ arr); } }
Sortie:
File d'attente originale: [Alex, Ali, Jean, Bob, Denis] ArrayList: [Alex, Ali, Jean, Bob, Denis]
Éditeur de code Java: Testez votre code en ligne!
Testez vos connaissances – QCM Java corrigé – Partie 1QCM sur Java avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses…Lire plus
- Exercice Java Corrigé pour Débutant | Partie 1
- Exercice Java Corrigé pour Débutant | Partie 2
- Exercice Java Corrigé pour Débutant | Partie 3
- Exercice Java Corrigé pour Débutant | Partie 4
- Exercice Java Corrigé pour Débutant | Partie 5
- Exercice Java Corrigé pour Débutant | Partie 6
- Exercice Java Corrigé pour Débutant | Partie 7
- Exercice Java Corrigé pour Débutant | Partie 8
- Exercice Java Corrigé pour Débutant | Partie 9
- Exercice Java Corrigé pour Débutant | Partie 10
- Exercice Java Corrigé – Méthodes Récursives
- Exercice Java Corrigé sur les Collections – Arraylist – Partie 1
- Exercice Java Corrigé sur les Collections – Arraylist – Partie 2
- Exercice Java Corrigé sur les Collections – Arraylist – Partie 3
- Exercice Java Corrigé sur les Collections – Arraylist – Partie 4
- Exercice Java Corrigé sur les Collections – LinkedList – Partie 1
- Exercice Java Corrigé sur les Collections – LinkedList – Partie 2
- Exercice Java Corrigé sur les Collections – LinkedList – Partie 3
- Exercice Java Corrigé sur les Collections – HashSet
- Exercice Java Corrigé sur les Collections – TreeSet – Partie 1
- Exercice Java Corrigé sur les Collections – TreeSet – Partie 2
- Exercice Java Corrigé sur les Collections – PriorityQueue
- Exercice Java Corrigé sur les Collections – HashMap
- Exercice Java Corrigé sur les Collections – TreeMap
- Exercices corrigés Java POO – Constructeurs
- Exercices corrigés Java – Programmation Orientée Objet | Partie 1
- Exercices corrigés Java – Programmation Orientée Objet | Partie 2
- Exercices corrigés Java – Programmation Orientée Objet | Partie 3
- Exercices corrigés Java – Programmation Orientée Objet | Partie 4
- Exercices corrigés Java – Programmation Orientée Objet | Partie 5
- Exercices corrigés Java – Programmation Orientée Objet | Partie 6
- Exercice Java Corrigé sur POO – Polymorphism
- Exercice Java Corrigé – POO – Interfaces
- Exercice Java Corrigé – POO – Classe Abstraite
- Exercice Java Corrigé – POO – Classes Imbriquées
- Exercices corrigés Java les classes et l’héritage – Partie 1
- Exercices corrigés Java les classes et l’héritage – Partie 2
- Exercice Java Corrigé – Gestion Des Exceptions