黑马程序员技术交流社区
标题: 使用LinkList实现栈或者队列 [打印本页]
作者: kingmask 时间: 2016-4-27 22:56
标题: 使用LinkList实现栈或者队列
使用LinkList实现栈或者队列:
LinkList的底层是双向循环链表
要模拟栈:先进后出,可以在头部压入再从头部取出元素,即:addFirst()和removeFirst()配合使用
模拟队列:先进先出,可以在头部压入再尾部取出元素,即:addFirst()和removeLast()配合使用
package com.itheima;
import java.util.LinkedList;
public class LinkedList实现栈{
public static void main(String[] args) {
LinkedList2 lk2=new LinkedList2();
lk2.add(new Student2("hello",23));
lk2.add(new Student2("world",21));
lk2.add(new Student2("new",22));
lk2.add(new Student2("java",20));
System.out.println("压入栈集合:"+lk2);
//获取
System.out.println(lk2.pop());
System.out.println(lk2.pop());
System.out.println(lk2.pop());
System.out.println(lk2.pop());
}
}
class LinkedList2 {
//使用静态成员保存此时遍历的位置
private static int index;
private LinkedList link;
public LinkedList2() {
link = new LinkedList();
}
//进栈
public void add(Object stu) {
link.addFirst(stu);
}
//出栈
public Object pop(){
return link.removeFirst();
}
public int size() {
return link.size();
}
}
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |