Maison  >  Article  >  Java  >  Comment pouvons-nous implémenter la pile en utilisant la file d’attente en Java ?

Comment pouvons-nous implémenter la pile en utilisant la file d’attente en Java ?

王林
王林avant
2023-08-25 17:05:111395parcourir

Comment pouvons-nous implémenter la pile en utilisant la file d’attente en Java ?

A Stack est une sous-classe de la classe Vector, qui représente une pile d'objets dernier entré, premier sorti (LIFO). Le dernier élément ajouté en haut de la pile (In) peut être le premier élément supprimé de la pile (Out). La classe

Queue étend l'interface Collection et prend en charge les opérations d'insertion et de suppression en utilisant le premier entré, premier sorti (FIFO). Nous pouvons également utiliser des files d'attente pour implémenter des piles dans le programme suivant.

Exemple

import java.util.*;
public class StackFromQueueTest {
   Queue queue = new LinkedList();
<strong>   public void push(int value) {
</strong>      int queueSize = queue.size();
      queue.add(value);
      for (int i = 0; i < queueSize; i++) {
         queue.add(queue.remove());
      }
   }
<strong>   public void pop() {
</strong>      System.out.println("An element removed from a stack is: " + queue.remove());
   }
   public static void main(String[] args) {
      StackFromQueueTest test = new StackFromQueueTest();
      test.push(10);
      test.push(20);
      test.push(30);
      test.push(40);
      System.out.println(test.queue);
      test.pop();
      System.out.println(test.queue);
   }
}

Sortie

<strong>[40, 30, 20, 10]
</strong>An element removed from a stack is: 40
<strong>[30, 20, 10]</strong>

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer