public class MyStack {
//定义一个LinkeList集合
private LinkedList lkd = new LinkedList<>();
//压栈
public void push(Object o) {
lkd.addFirst(o);
}
//出栈
public Object pop() {
Object first = lkd.getFirst();
lkd.removeFirst();
return first;
}
//元素长度
public int size() {
return lkd.size();
}
public static void main(String[] args) {
//定义一个类
MyStack ms = new MyStack();
//添加数据
ms.push("a");
ms.push("b");
ms.push("c");
//遍历
while(ms.size()!=0) {
System.out.println(ms.pop());
}
}
}
//运行结果
-----------堆栈-----------
c
b
a
2.队列
队列:表示一个先入先出的数据结构;
public class MyStack {
//定义一个LinkeList集合
private LinkedList lkd = new LinkedList<>();
//加入
public void push(Object o) {
lkd.addLast(o);
}
//输出
public Object pop() {
Object first = lkd.getFirst();
lkd.removeFirst();
return first;
}
//元素长度
public int size() {
return lkd.size();
}
public static void main(String[] args) {
//定义一个类
MyStack ms = new MyStack();
//添加数据
ms.push("a");
ms.push("b");
ms.push("c");
//遍历
while(ms.size()!=0) {
System.out.println(ms.pop());
}
}
}
//运行结果
-----------队列-----------
a
b
c