黑马程序员----用LinkedList模仿堆栈和队列原理

来源:互联网 发布:java mvc设计模式闫宏 编辑:程序博客网 时间:2024/05/22 06:50

这里先介绍下堆栈和队列,堆栈就相当于杯子,先就去的水是最后出来,而队列就相当于管道,从A口先进去的水,从B口会先流出来,LinkedList是链式存储,下面就是用LinkedList模拟堆栈和队列的代码


import java.util.*;
class DuiZhan
{
private LinkedList link;
DuiZhan()
{
link=new LinkedList();
}
public void myAdd(Object obj)
{
link.addFirst(obj);
}
public Object myGet()
{
return link.removeFirst();
}
public boolean isNull()
{
return link.isEmpty();
}
}
class DuiLie
{
private LinkedList link;
DuiLie()
{
link=new LinkedList();
}
public void myAdd(Object obj)
{
link.addFirst(obj);
}
public Object myGet()
{
return link.removeLast();
}
public boolean isNull()
{
return link.isEmpty();
}
}
class LinkedListTest
{
public static void main(String[] args)
{
DuiLie dl=new DuiLie();
dl.myAdd("java01");
dl.myAdd("java02");
dl.myAdd("java03");
dl.myAdd("java04");
sop("队列");
while(!dl.isNull())
{
sop(dl.myGet());
}
DuiZhan dz=new DuiZhan();
dz.myAdd("java01");
dz.myAdd("java02");
dz.myAdd("java03");
dz.myAdd("java04");
sop("堆栈");
while(!dz.isNull())
{
sop(dz.myGet());
}
}
public static void sop(Object str)
{
System.out.println(str);
}
}


上述代码就实现了堆栈的先进后出和队列的先进先出的模拟

0 0
原创粉丝点击