LinkedStack

public class LinkedStack<T> {

    private static class Node<U>{
        U item;
        Node<U>next;
        Node(){
            item=null;
            next=null;
        }
        Node(U u,Node<U>node){
            item=u;
            next=node;
        }
        boolean end(){
            return item==null&&next==null;
        }
    }
    private Node<T>top=new Node<T>();
    public void push(T item){
        top=new Node<T>(item,top);
    }

    public  T pop(){
        T result=top.item;
        if(!top.end()){
            top=top.next;
        }
        return result;
    }
    public static void main(String[] args) {
        LinkedStack<String> ls=new LinkedStack<String>();

        for(String s:"this is code test!!".split(" ")){
            ls.push(s);
        }
        String s;
        while ((s=ls.pop())!=null){
            System.out.println(s);
        }

    }
}

  

上一篇:(4)进程---daemon守护线程和join阻塞


下一篇:C++数据结构之链式栈(二十)