首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

制造一个java应用程序,模拟实现堆栈的数据读写

2012-12-23 
制作一个java应用程序,模拟实现堆栈的数据读写堆栈的ArrayList实现 Java code !--Code highlighting prod

制作一个java应用程序,模拟实现堆栈的数据读写
堆栈的ArrayList实现

Java code

<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->import java.util.*;public class Stack{    private ArrayList pool=new ArrayList();        public Stack(){    }        public Stack(int n){        pool.ensureCapacity(n);    }        public void clear(){        pool.clear();    }        public boolean isEmpty(){        return pool.isEmpty();    }            public Object pop(){        if(isEmpty())            throw new EmptyStackException();        return pool.remove(pool.size()-1);    }        public void push(Object el){        pool.add(el);    }        public String toString(){        return pool.toString();    }}//end clss Stack


堆栈的链表实现
Java code
import java.util.LinkedList;import java.util.EmptyStackException;public class LIStack{private LinkedList list=new LinkedList();public LIStack(){}public void clear(){list.clear();}public boolean isEmpty(){return list.isEmpty();}public Object topEl(){if(isEmpty())throw new EmptyStackException();return list.getLast();}public Object pop(){if(isEmpty())throw new EmptyStackException();return list.removeLast();}public void push(Object el){list.addLast(el);}public String toString(){return list.toString();}}//end class LIStack


堆栈的纯数组实现(只支持int类型数据,有待完善......)
Java code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->/* *使用纯数组实现堆栈 */public class ARStack{    private int[] a;    private int MaxSize,nElem;        public ARStack(){        MaxSize=100;        a=new int[MaxSize];        nElem=0;    }        public void clear(){        nElem=0;    }        public boolean isEmpty(){        return nElem==0;    }        public int pop(){        return a[--nElem];    }        public void push(int value){        a[nElem]=value;        nElem++;    }        public static void main(String[] args){        ARStack ar=new ARStack();                for(int i=10;i>=0;i--){            ar.push(i);        }                while(!ar.isEmpty()){            System.out.println(ar.pop());        }    }}

热点排行