栈的实现(Java)

package tesetstack;

public class TestStack {

public static void main(String[] args) {

ArrayStack as=new ArrayStack(5);

as.push(3);

as.push(2);

as.push(4);

as.push(1);

as.list();

System.out.println(as.pop());

as.list();

}

}

class ArrayStack{

private int maxSize;

private int[] stack;

private int top=-1;

public ArrayStack(int maxSize) {

// TODO Auto-generated constructor stub

this.maxSize=maxSize;

stack=new int[maxSize];

}

public boolean isFull() {

return top==maxSize-1;

}

public boolean isEmpty() {

return top==-1;

}

public void push(int value) {

if (isFull()) {

return;

}

top++;

stack[top]=value;

}

public int pop() {

if (isEmpty()) {

throw new RuntimeException("栈空没有数据");

}

int value=stack[top];

top--;

return value;

}

public void list() {

for (int i = top; i >= 0; i--) {

System.out.println("stack["+i+"]="+stack[i]+"\t");

}

}

}

java栈的实现_栈的实现(Java)相关推荐

  1. java栈和队列_栈和队列的面试题Java

    栈和队列: 面试的时候,栈和队列经常会成对出现来考察.本文包含栈和队列的如下考试内容: (1)栈的创建 (2)队列的创建 (3)两个栈实现一个队列 (4)两个队列实现一个栈 (5)设计含最小函数min ...

  2. java栈顶元素_栈(Stack)

    栈(Stack)是一种后进先出的数据结构(LIFO:last in first out),只允许访问栈中的第一个数据项:即最后插入的数据项.移除这个数据项之后,才能看到第二个数据项,以此类推. 往栈中 ...

  3. 栈的输出_栈和队列--十进制转化为二进制

    需求:编写程序使十进制转换成为二进制 分析:十进制转换二进制.如图,只需要不断除以2,然后将余数逆置即可,我们可以将余数依次输入到栈中,利用栈先进后出的特性,再将栈中元素输出即可得到二进制序列 int ...

  4. java主要内存区域_可能是把Java内存区域讲的最清楚的一篇文章

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 介绍下 Java 内存区域(运行时数据区) Java 对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄 ...

  5. java class 文件分析_大概优秀的java程序员都要会分析class文件吧

    相信大家在学java的时候都会听到这样的一些结论: enum 是一个类 泛型的实现使用了类型擦除技术 非静态内部类持有外部类的引用 需要将自由变量声明成final才能给匿名内部类访问 ... 初学的时 ...

  6. java docx 内存溢出_第2章 Java内存区域与内存溢出异常

    本章主要介绍了Java的内存区域以及会触发对应区域内存溢出的触发条件及表现结果.同时还对java对象的内存布局进行了简单的讲解. 2.2 运行时数据区域: 比较直观的一张图来表示: Java虚拟机运行 ...

  7. java list e 查找_源码(04) -- java.util.ListE

    java.util.List 源码分析(JDK1.7) ------------------------------------------------------------------------ ...

  8. java 基础 笔试题_非常全面的java基础笔试题

    1.下列说法正确的是() (程序结构) A java程序的main方法必须写在类甩面 B java程序中可以有多个main方法 C.java程序中类名必须与文件名一样 D.JAVA程序的main方法中 ...

  9. 李兴华java视频在线观看_李兴华Java开发实战经典视频教程_IT教程网

    资源名称:李兴华Java开发实战经典视频教程 资源目录: [IT教程网]010201_[第2章:简单Java程序]_简单Java程序 [IT教程网]010301_[第3章:Java基础程序设计]_Ja ...

  10. 李兴华java实战经典视频_李兴华Java开发实战经典视频教程

    资源名称:李兴华Java开发实战经典视频教程 资源目录:[一品资源网]010201_[第2章:简单Java程序]_简单Java程序[一品资源网]010301_[第3章:Java基础程序设计]_Java ...

最新文章

  1. Appium+Python 自动化测试一之:环境安装(Android篇)
  2. 模板页显示Excel数据Gridview增删改查
  3. Spring Cloud Alibaba - 14 OpenFeign自定义配置 + 调用优化 + 超时时间
  4. JavaScript事件循环探索
  5. 编译linux-2.6.29内核,报错解决方法
  6. http get extension information - another way to get host url and port number of current application
  7. 创建react应用程序_使用SpringWebFlux的React式Web应用程序
  8. xmpp 常见错误 一
  9. php 如何让html表单当中的数据在修改mysql的时候自动变更_怎么用php把html表单内容写入数据库?...
  10. C语言求解100的带分数形式的代码
  11. 动态网站Web开发用什么语言好?PHP、ASP还是ASP.NET
  12. jQuery - animate(滑块滑动)
  13. RazorPage介绍(一)
  14. 2021年“泰迪杯”数据分析技能B题-肥料登记数据分析赛题
  15. java你如何调字体大小_eclipse怎样调整代码字体大小 值得一看
  16. Cisco命令大全(清除配置和恢复口令)
  17. Win7简单方法让笔记本变身无线热点,共享手机上网
  18. 电脑如何更改设置本机IP地址
  19. flutter全局状态管理Provider
  20. 2021年高考成绩查询湖南电信,湖南省通信管理局关于开展2021年全省电信网码号资源年报和检查工作的通知...

热门文章

  1. .NET 和 JAVA
  2. QT之在QML中使用C++类和对象的两种方式
  3. C# 多页打印简单实现
  4. C语言上证指数运行源码,个股对比上证指数公式源码
  5. PHP中text里数字相加,excel文字数字如何混合求和
  6. CrystalDiskInfo的下载使用
  7. 深信服安全软件产品配置概况
  8. php 中文键名 问题,PHP中使用asort进行中文排序失效的问题处理
  9. Certificates, Identifiers Profiles创建总结
  10. 宁波医院计算机试题及答案,(宁波市第25届小学生计算机程序设计竞赛试题及答案.doc...