剑指Offer(书):用两个栈实现队列
2024-08-23 12:33:15
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
分析:入栈时只入栈1,出栈为栈2;若栈2不为空,直接出栈;否则,将栈1中的值依次入栈2,之后栈2出栈
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 NullPointerException("空栈");
}
while (!stack1.isEmpty()){
stack2.push(stack1.pop());
}
}
return stack2.pop();
}
最新文章
- position总结图
- JS实战 &#183; 实践积累点滴杂烩
- zTree下拉菜单多级菜单多选实现
- how tomcat works 读书笔记(一)----------一个简单的webserver
- hdu 1987-How many ways(dp)
- Java div 使用说明
- css实现椭圆、半椭圆
- bootstrap-table表格插件的使用案例
- V5.7_UTF8_SP1、SP2---任意前台用户登录(cookie伪造)
- Mac下安装PEAR
- bzoj4445(半平面交)
- Bean Shell常用内置变量总结
- javascript进阶笔记(2)
- iOS 影音新格式 HEIF HEVC
- POJ 1050 To the Max (最大子矩阵和)
- ubuntu的su初始密码设置
- Hibernate多对多关联关系
- LeetCode——Number of Boomerangs
- WEB缓存初探
- Git使用笔记2