A入站口 B出站口
------------ ------------------
5列火车 出站口
------------ ------------------ + +
+ 火 +
+ 车 +(调度台)
+ 站 +
一共有5辆火车。请问他们一共有多少种出站顺序。每次出站要求只能有一辆进调度台...要求用JAVA语言实现.
一定要用java.util.Stack类。多谢大家。我想不出来应该如何解决这道题目。希望高手能帮我一下.
------------ ------------------
5列火车 出站口
------------ ------------------ + +
+ 火 +
+ 车 +(调度台)
+ 站 +
一共有5辆火车。请问他们一共有多少种出站顺序。每次出站要求只能有一辆进调度台...要求用JAVA语言实现.
一定要用java.util.Stack类。多谢大家。我想不出来应该如何解决这道题目。希望高手能帮我一下.
解决方案 »
- swing canvas上如何显示图片
- 怎样用StringBuffer将一个短文中的原单词全部替换为新单词?
- eclispe怎么改变字体的大小
- SQL server连接JDBC怎么能连远程服务器不光是本地的
- 怎么样可以重新加载struts配置文件 而不用重起服务器 代码??
- 帮我看看这段操作数据库的代码:
- java applet
- eclipse使用的一点问题
- 面向对象的系统分析与设计方法中,软件架构的4+1视图是什么,有什么关系
- 请帮助Java初学者——1、如何调用API解解ARG压缩文件;2、如何用API调用DOS命令!
- 请教一下java applet和CGI交互的问题????????????
- 数据库连接的问题,请问高手该程序还有缺陷吗?
题目要求吗?
java里面实现栈要用LinkedList
package useful;
import java.util.LinkedList;
import java.util.List;
import java.util.Stack;
public class Attemper {
Stack sk;
List before;
List after;
static int count=0;
static int attemperCount=0;
Attemper(List before,Stack sk)
{
this.before=before;
this.sk=sk;
if(before.isEmpty())
{
count++;
}else
{
next();
}
}
void next()
{
for(int i=0;i<before.size();i++)
{
Stack sk1=(Stack)(sk.clone());
List before1=new LinkedList();
before1.addAll(before);
sk1.push(before1.remove(i));
new Attemper(before1,sk1);}
if (!sk.isEmpty())
{
Stack sk1=(Stack)(sk.clone());
List before1=new LinkedList();
before1.addAll(before);
sk1.pop();
new Attemper(before1,sk1);
}
}
public static void main(String[] args)
{
List before=new LinkedList();
before.add("第一辆火车 ");
before.add("第二辆火车 ");
before.add("第三辆火车 ");
before.add("第四辆火车 ");
before.add("第五辆火车 ");
Stack sk=new Stack();
new Attemper(before,sk);
System.out.println(Attemper.count);
}
}