堆栈、队列

1、堆栈(先进后出)push(),pop()

2、队列(先进先出)offer(),poll()

package cd.itcast.runable;

import java.util.LinkedList;

//用LinkedList模拟堆栈的数据存储结构
class StackList{
    LinkedList list;
    public StackList() {
        list=new LinkedList();
    }
    //进栈
    public void add(Object o){
        list.push(o);
    }
    //弹栈
    public Object pop(){
        return list.pop();
    }
    public int size(){
        return list.size();
    }
}

class TeamList{
    LinkedList list;
    public TeamList() {
        list=new LinkedList();
    }
    public void add(Object e){
        list.offer(e);
    }
    public Object remove() {
        return list.poll();
    }
    public int size(){
        return list.size();
    }
}

public class Demo9 {
    public static void main(String[] args) {
        StackList sl=new StackList();
        sl.add("李嘉诚");
        sl.add("马云");
        sl.add("李彦宏");
//        for(int i=0;i<sl.size();i++){此时的size()是变化的,
//            System.out.println(sl.pop());
//        }
        int size=sl.size();
        System.out.println("先进后出:");
        for(int i=0;i<size;i++){
            System.out.println(sl.pop());
        }
        
        TeamList tl=new TeamList();
        tl.add("甘");
        tl.add("兴");
        tl.add("瑞");
        int size1=tl.size();
        System.out.println("先进先出:");
        for(int i=0;i<size1;i++){
            System.out.println(tl.remove());
        }
    }
}

 

posted on 2016-11-09 13:42  hgfs瑞  阅读(122)  评论(0编辑  收藏  举报

导航