标签:operation code pen family sem target ons round 思路
题目链接:https://leetcode.com/problems/implement-queue-using-stacks/
题目:Implement the following operations of a queue using stacks.
push
to top
, peek/pop from top
, size
,
and is empty
operations are valid./** * 用两个栈模拟实现队列基本操作 * @author 徐剑 * @date 2016-02-25 * */ public class Solution { Stack<Integer> s1 = new Stack<>(); Stack<Integer> s2 = new Stack<>(); // Push element x to the back of queue. public void push(int x) { s1.push(x); } // Removes the element from in front of queue. public void pop() { if (!s2.empty()) { s2.pop(); } else if (s1.isEmpty()) { return; } else { while (!s1.isEmpty()) { int temp = s1.pop(); s2.push(temp); } s2.pop(); } } // Get the front element. public int peek() { if (!s2.isEmpty()) return s2.pop(); else if (s1.isEmpty()) { return -1; } else { while (!s1.isEmpty()) { int temp = s1.pop(); s2.push(temp); } return s2.peek(); } } // Return whether the queue is empty. public boolean empty() { return s1.isEmpty() && s2.isEmpty(); } }
【LeetCode OJ 232】Implement Queue using Stacks
标签:operation code pen family sem target ons round 思路
原文地址:http://www.cnblogs.com/gavanwanggw/p/7116016.html