(В) [Предложение] [9] [очереди с двумя стеками]

Название Описание

  Очередь Два стек
  

анализ идей

  1. Стек -> последний из очереди -> FIFO
  2. Очереди в эксплуатацию, S1 выбран стек в стек, и реализация ключевых -queue операции, принимая во внимание характер очереди FIFO, чтобы извлечь элементы s1 и s2 в стек , когда очереди, то он совал s2 Мы можем гарантировать природу FIFO. ## Java код
public class Offer009 {
    public static void main(String[] args) {

    }

    Stack<Integer> stack1 = new Stack<Integer>();
    Stack<Integer> stack2 = new Stack<Integer>();

    public void push(int node) {
        stack1.push(node);
    }

    public int pop() {
        if (stack2.isEmpty()) {
            if (stack1.isEmpty()) {
                throw new IllegalStateException("队列为空");
            } else {
                while (!stack1.isEmpty()) {
                    stack2.push(stack1.pop());
                }
            }
        }
        return stack2.pop();
    }
}

ссылка Код

Предложение доказать коды безопасности -java

рекомендация

отwww.cnblogs.com/haoworld/p/boffer9-yong-liang-ge-zhan-shi-xian-dui-lie.html