栈队列例题2:SetOfStack放盘子
2024-08-27 11:02:42
代码如下:
import java.util.ArrayList;
import java.util.Scanner; public class SetOfStack { public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//存储放盘子和拿盘子的操作
int opr[][]=new int[4][2];
for(int i=0;i<opr.length;i++)
{
for(int j=0;j<opr[i].length;j++)
{
opr[i][j]=sc.nextInt();
}
} ArrayList<ArrayList<Integer>> oprate=SetOfStacks(opr,2);
//剩余盘子的输出
for(ArrayList<Integer> one : oprate)
{
for(int value : one)
{
System.out.print(value+" ");
}
} } public static ArrayList<ArrayList<Integer>> SetOfStacks(int opr[][],int size){ ArrayList<ArrayList<Integer>> Boss=new ArrayList<ArrayList<Integer>>(); //存储有多少摞盘子
ArrayList<Integer> List=new ArrayList<Integer>(); //一摞盘子
Boss.add(List);
for(int oprAndValue[] : opr)
{
int oprValue=oprAndValue[0];
int oprAdd=oprAndValue[1]; if(oprValue==1)
{
if(List.size()==size) {
List=new ArrayList<Integer>();
Boss.add(List);
List.add(oprAdd);
}
else
{
List.add(oprAdd);
}
}
else
{
if(List.size()==0)
{
Boss.remove(Boss.size()-1);
List=Boss.get(Boss.size()-1);
}
else
{
List.remove(List.size()-1);
}
} }
return Boss;
} }
最新文章
- Djunit工作记录
- Bootstrap~多级导航(级联导航)的实现
- [Android Pro] app_process command in Android
- jsp 标签、 项目全路径引用${CTX}
- c++ encode decode
- rman--增量备份
- Intellij 快捷键大全
- 使用Row_Number()分页优化
- java 学习心得
- MySQL集群(二)之主主复制
- Java进阶篇(二)——抽象类、内部类
- Mac 启动或者禁用翻盖自动开关机
- repo 获取各个库的tag代码或者分支代码
- JDBC是如何执行SQL脚本的
- 3、JUC--ConcurrentHashMap 锁分段机制
- Python常用模块-随机数模块(random)
- python 安装配置(windows)
- Java 8 特性 – 终极手册
- 不使用if switch 各种大于 小于 判断2个数的大小
- 方程式EQGRP_Lost_in_Translation工具之fb.py
热门文章
- SpringAOP使用
- VB-机房收费系统之Excel导出
- 【bzoj2190】: [SDOI2008]仪仗队 数论-欧拉函数
- P2900 [USACO08MAR]土地征用Land Acquisition
- swift -- 单例+ lazy懒加载 + 第三方库
- Codeforces Round #334(div.2) A
- day20 模块 collections time sys os
- 20-----BBS论坛
- 12-----BBS论坛
- my.兽决_等_价格