首页 > 其他 > 详细

数据结构之栈

时间:2016-06-12 23:39:14      阅读:342      评论:0      收藏:0      [点我收藏+]

一、简单实现

/**

 * 栈

 * 以数组为存储的栈

 * 说明:

 * 1.入栈

 * 2.出栈

 * 3.是否为空

 * 4.是否已满

 *

 */

public class Stack 

{

    private int maxSize;

    

    private long[] stackArray;

    

    private int top;

    

    public Stack(int s)

    {

    maxSize = s;

    stackArray = new long[maxSize];

    top = -1;

    }

    

    public void push(long j)

    {

    stackArray[++top] = j;

    }

    

    public long pop()

    {

    return stackArray[top--];

    }

    

    public long peek()

    {

    return stackArray[top];

    }


    public boolean isEmpty()

    {

    return top == -1;

    }

    

    public boolean isFull()

    {

    return top == maxSize - 1;

    }

    

}

二、以链表的存储结构的栈

public class StackLink

{

private LinkedList<Long> dataList;

public StackLink()

{

dataList = new LinkedList<Long>();

}


public void push(long j)

{

dataList.addFirst(j);

}

public long pop()

{

return dataList.removeFirst();

}

public boolean isEmpty()

{

return dataList.isEmpty();

}

}


数据结构之栈

原文:http://881206524.blog.51cto.com/10315134/1788447

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!