import java.util.LinkedList;
public class LinkedListStackQueue {
public static void main(String[] args) {
LinkedListStackQueue linStackQueue=new LinkedListStackQueue();
// 栈的测试
linStackQueue.push(100);
linStackQueue.push(200);
linStackQueue.push(300);
linStackQueue.push(400);
linStackQueue.pop();
System.out.println(linStackQueue.peek()); // 300
System.out.println(linStackQueue.isStackEmpty()); // false
// 队列的测试
linStackQueue.put(100);
linStackQueue.put(200);
linStackQueue.put(300);
linStackQueue.put(400);
linStackQueue.get();
System.out.println(linStackQueue.get()); // 200
System.out.println(linStackQueue.isQueueEmpty()); // false
}
private LinkedList linkList; // 栈
private LinkedList linkQueue;
public LinkedListStackQueue() {
// TODO Auto-generated constructor stub
linkList= new LinkedList();
linkQueue = new LinkedList();
}
public void push(Object o){ //压栈
linkList.addFirst(o);
}
public Object pop(){ // 出栈
return linkList.removeFirst();
}
public Object peek(){ // 查看栈顶元素
return linkList.peek();
}
public boolean isStackEmpty(){ // 查看是否为空
return linkList.isEmpty();
}
public void put(Object o){ // 入队
linkQueue.addLast(o);
}
public Object get (){ // 出队
return linkQueue.removeFirst();
}
public boolean isQueueEmpty(){ // 查看是否为空
return linkQueue.isEmpty();
}
}
LinkedList 实现栈与队列,比较简单
最新推荐文章于 2021-03-10 19:15:18 发布