Maison  >  Article  >  Java  >  Comment utiliser la fonction ArrayDeque pour effectuer des opérations de deque de tableau en Java

Comment utiliser la fonction ArrayDeque pour effectuer des opérations de deque de tableau en Java

王林
王林original
2023-06-26 16:14:13804parcourir

En Java, ArrayDeque est une implémentation d'une file d'attente à double extrémité, qui peut être utilisée pour effectuer des opérations de file d'attente à double extrémité sur des tableaux. Cet article explique comment utiliser la fonction ArrayDeque en Java pour effectuer des opérations deque.

  1. Introduction à la fonction ArrayDeque

ArrayDeque est un moyen d'implémenter une file d'attente à double extrémité en Java. Il peut effectuer des opérations de mise en file d'attente et de retrait en tête et en queue de la file d'attente. Dans l'implémentation spécifique, ArrayDeque prend la forme d'un tableau dynamique, qui peut automatiquement s'étendre et se contracter selon les besoins. ArrayDeque hérite de AbstractCollection et implémente l'interface Deque.

  1. Créer un ArrayDeque

En Java, nous pouvons utiliser la classe ArrayDeque pour créer un deque. Voici comment ArrayDeque est créé :

Deque<Integer> deque = new ArrayDeque<Integer>();

Le code ci-dessus définit une file d'attente à double extrémité de type Integer, que nous pouvons utiliser pour effectuer des opérations de file d'attente à double extrémité.

  1. Opérations de base de la file d'attente à double extrémité

3.1 Opération de mise en file d'attente

Dans ArrayDeque, nous pouvons utiliser la fonction addFirst() pour insérer des éléments en tête de la file d'attente, et la fonction addLast() pour insérer des éléments en tête de la file d'attente. fin de la file d'attente, comme indiqué ci-dessous :

deque.addFirst(1);
deque.addLast(2);

Le code ci-dessus ajoute deux éléments au deque, 1 et 2, respectivement en tête et en queue de la file d'attente.

3.2 Opération de suppression de la file d'attente

Dans ArrayDeque, nous pouvons utiliser la fonction pollFirst() pour supprimer des éléments de la tête de la file d'attente, et utiliser la fonction pollLast() pour supprimer des éléments de la queue de la file d'attente, comme indiqué ci-dessous :

int element1 = deque.pollFirst();
int element2 = deque.pollLast();

Le code ci-dessus supprime des éléments du deque Deux éléments ont été supprimés, l'élément 1 en tête de l'équipe et l'élément 2 à la fin de l'équipe.

3.3 Récupérer les éléments en tête et en queue de la file d'attente

Dans ArrayDeque, nous pouvons utiliser la fonction getFirst() pour obtenir l'élément head et la fonction getLast() pour obtenir l'élément tail, comme indiqué ci-dessous :

int headElement = deque.getFirst();
int tailElement = deque.getLast();

Le code ci-dessus obtient L'élément head et l'élément tail dans la file d'attente à double extrémité sont ajoutés.

  1. Parcours du deque

Nous pouvons également utiliser des itérateurs en Java pour parcourir les éléments du deque comme indiqué ci-dessous :

Iterator<Integer> iterator = deque.iterator();
while (iterator.hasNext()) {
   int element = iterator.next();
   System.out.println(element);
}

Le code ci-dessus parcourt tous les éléments du deque à l'aide d'itérateurs, puis les affiche un par un.

  1. Résumé

Grâce à l'introduction ci-dessus, nous pouvons utiliser la fonction ArrayDeque en Java pour effectuer des opérations de deque de tableau. Nous pouvons utiliser les fonctions addFirst() et addLast() pour ajouter des éléments au deque, utiliser les fonctions pollFirst() et pollLast() pour supprimer des éléments de la tête et de la queue de la file d'attente, et utiliser getFirst() et getLast( ) fonctionne pour obtenir la tête et la queue de la file d'attente. L'élément de queue de la file d'attente, en utilisant un itérateur pour parcourir les éléments du deque. Grâce à ces opérations, nous pouvons facilement implémenter la fonction de file d'attente à double extrémité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn