Maison  >  Article  >  Java  >  Quelle est la différence entre la pile et la file d’attente en Java ?

Quelle est la différence entre la pile et la file d’attente en Java ?

青灯夜游
青灯夜游original
2019-11-16 16:34:003061parcourir

Quelle est la différence entre la pile et la file d’attente en Java ?

File d'attente : C'est un tableau linéaire qui restreint l'insertion à une extrémité du tableau et la suppression à l'autre extrémité

Pile : Oui Un tableau linéaire qui restreint l'insertion ; et les opérations de suppression à une seule extrémité de la table.

Les différences sont les suivantes :

1. Différentes règles

File d'attente : Premier entré, premier sorti (Premier entré, premier sorti) FIFO<.>

2. Pile : Premier entré, dernier sorti (First In Last Out) FILO

2. Différentes restrictions sur les opérations d'insertion et de suppression

1. à une extrémité du tableau. Et supprimer à l'autre bout du tableau

2. Pile : Vous ne pouvez insérer et supprimer qu'à une extrémité du tableau.

3. Différentes vitesses de parcours des données

1. File d'attente : parcours basé sur le pointeur d'adresse, et peut être parcouru depuis la tête ou la queue, mais ne peut pas être parcouru en même temps. besoin d'ouvrir de l'espace, car pendant le parcours La structure des données n'est pas affectée pendant le processus, donc la vitesse de parcours doit être rapide

2. Pile : les données ne peuvent être récupérées que par le haut, c'est-à-dire ; , la première chose qui entre au bas de la pile doit traverser toute la pile pour être retirée, et lors du parcours des données, il est nécessaire d'ouvrir un espace temporaire pour les données afin de maintenir la cohérence des données avant de les parcourir.

4. Similitudes et différences dans la mise en œuvre de l'interface

La file d'attente et la pile sont implémentées par l'interface Collection, la file d'attente est implémentée par l'interface Queue et la pile est implémentée par l'interface List.

5. Similitudes et différences dans la vitesse de parcours des données

La pile ne peut récupérer les données que depuis la tête, c'est-à-dire que la première chose introduite doit parcourir toute la pile avant de pouvoir être récupérée. et lors du parcours des données, il est également nécessaire d'ouvrir un espace temporaire pour les données afin de maintenir la cohérence des données avant et après le parcours.

La file d'attente est parcourue en fonction du pointeur d'adresse et peut être parcourue depuis le début ou la fin sans ouvrir d'espace temporaire, ce qui est beaucoup plus rapide.

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