【第五节】Java代码实现栈----【链表的存储形式】

来源:互联网 发布:整型数据的输出格式 编辑:程序博客网 时间:2024/06/04 01:36
package com.java.chapterFive;public class LinkStackApp {    /**     * @param args     */    public static void main(String[] args) {        // TODO Auto-generated method stub        StackList stack=new StackList();        stack.push(20);        stack.push(60);        stack.push(30);        stack.push(40);        stack.displayStack();        stack.pop();        stack.pop();        stack.pop();        stack.displayStack();    }}class LinkA{        int data;        LinkA next;        LinkA(int a){            this.data=a;        }}////////////////////////////////////////////////////////////////////////////////class linkListA{    LinkA first;//------------------------------------初始化链表都要赋值为空    linkListA(){        first=null;    }//------------------------------------------------    public void insertLink(int a){        LinkA newLink=new LinkA(a);        newLink.next=first;        first=newLink;    }//--------------------------------------------------------    public boolean isEmpty(){        return (first==null);    }//----------------------------------------------------    public int deleteLink(){            int temp=first.data;            first=first.next;            return temp;    }//-----------------------------------------------    public void displayList(){        LinkA current=first;        while(current!=null){            System.out.print(current.data+" ");            current=current.next;        }    System.out.println(" ");    }}///////////////////////////////////////////////////////////////////////////    class StackList{        linkListA linkListA;        StackList(){            linkListA=new linkListA();        }//------------------------------------------        public void push(int a){            linkListA.insertLink(a);        }//-------------------------------        public int pop(){            return linkListA.deleteLink();        }//----------------------------------------        public void displayStack(){            System.out.print("(Stack---->bottom)");            linkListA.displayList();        }//--------------------------------判断栈是否为空        public boolean isEmpty(){            return linkListA.isEmpty();        }    }
0 0
原创粉丝点击