数据结构之栈

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构之栈相关的知识,希望对你有一定的参考价值。

一、简单实现

/**

 * 栈

 * 以数组为存储的栈

 * 说明:

 * 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();

}

}


以上是关于数据结构之栈的主要内容,如果未能解决你的问题,请参考以下文章

数据结构之栈

数据结构之栈

数据结构之栈的应用

数据结构之栈的实现

数据结构与算法(Java)之栈

数据结构之栈