Queue<Integer> queue; public(){ queue = new LinkedList<>();
}
/** Push element x onto stack. */ publicvoidpush(int x){ queue.offer(x); }
/** Removes the element on top of the stack and returns that element. */ publicintpop(){ int size = queue.size(); if (size == 0) { return -1; } moveItem(size); int res = queue.poll(); return res;
} privatevoidmoveItem(int size){ int count = 0; while (count < size - 1) { queue.offer(queue.poll()); count++; } }
/** Get the top element. */ publicinttop(){ int size = queue.size(); moveItem(size); int res = queue.poll(); queue.offer(res); return res;
}
/** Returns whether the stack is empty. */ publicbooleanempty(){ return queue.isEmpty(); } }
近期评论