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

作者拍摄,技术很渣,轻喷


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



截图来自《Java数据结构和算法中文第二版》


作者水图

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

}

}


代码实现
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,359评论 0 33
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,699评论 18 399
  • 一、 1、请用Java写一个冒泡排序方法 【参考答案】 public static void Bubble(int...
    独云阅读 5,274评论 0 6
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile丽语阅读 9,398评论 0 6
  • 宸宸宝贝今年小学一年级了,自从身份变成了小学生,好像我对他发火的频率大了,主要是在作业的习惯方面。因为他从小受我性...
    宸宸妈妈阅读 1,531评论 0 0

友情链接更多精彩内容