栈的简单实现 数据结构没那么难

栈的简单实现 数据结构没那么难_第1张图片
作者拍摄,技术很渣,轻喷


栈在生活中的实例特别常见,比如说火车进入终点站,车厢一依次进入,当出站时车头变车尾,车尾变车头。但是这个比喻漏掉栈的一个重要特性,接下来这个例子作为补充,办公室里使用一个文件盒存放待处理的简历,优先处理最上面的,这就涉及到了栈的第二个特性,栈顶。



栈的简单实现 数据结构没那么难_第2张图片
截图来自《Java数据结构和算法中文第二版》


栈的简单实现 数据结构没那么难_第3张图片
作者水图

class XStack{

public int maxSize;

public int stackArray[];

public int top;

public XStack(int maxSize){

this.maxSize=maxSize;

stackArray=new int[maxSize];

top=-1;//此时栈为空

}

//push 推进,将元素推入

public void push(int num){

stackArray[++top]=num;

}

//出栈

public int pop(){

return stackArray[top--];

}

//插看栈顶元素

public int check(){

return stackArray[top];

}

//判空

public boolean isEmpty(){

if(top==-1){

return true;

}

return false;

}

//判满

public boolean isFull(){

if(top==maxSize-1){

return true;

}

return false;

}

}

//在这个类中,将Stack实例化

public class XStackApplication{

public static void main(String[] args){

XStack xStack=new XStack(6);

xStack.push(10);

xStack.push(11);

xStack.push(12);

xStack.push(13);

xStack.push(14);

System.out.println(xStack.check());

System.out.println(xStack.isFull());

}

}


栈的简单实现 数据结构没那么难_第4张图片
代码实现

你可能感兴趣的:(栈的简单实现 数据结构没那么难)