`
sunshangfeng
  • 浏览: 11797 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

java模拟堆栈

 
阅读更多


import java.util.List;
import java.util.ArrayList;


public class StackS {

private long size; //栈的大小
private List<Object> stacks = new ArrayList<Object>(); //栈

/**
* 初始化栈
* @param size
*/
public StackS(long size){
this.size = size;
}
/**
* 入栈
* @param obj
*/
public void push(Object obj){
if (this.stacks.size() < this.size) {
this.stacks.add(obj);
}else{
System.out.println("栈已满。。。。。。");
}
}
/**
* 出栈
* @return
*/
public Object pop(){
Object obj;
if (!this.isEmpty()) {
System.out.println("栈为空。。。。。。");
obj = null;
}else{
obj = this.peek();
this.stacks.remove(this.stacks.size() - 1);
}
return obj;
}
/**
* 判断栈是否为空
* @return
*/
public boolean isEmpty(){
return this.stacks.size() <= 0 ? false : true;
}
/**
* 判断栈是否为满
* @return
*/
public boolean isFull(){
return this.stacks.size() == this.size ? true : false;
}
/**
* 获取栈顶元素
* @return
*/
public Object peek(){
Object obj;
if (!this.isEmpty()) {
System.out.println("栈为空。。。。。。");
obj = null;
}else{
obj = this.stacks.get(this.stacks.size() - 1);
}
return obj;
}
/**
* 获取栈大小
* @return
*/
public long size(){
return this.stacks.size();
}
}

分享到:
评论

相关推荐

    使用LinkedList模拟堆栈

    使用LinkedList模拟堆栈操作,包括进栈、出栈,入队、出队

    堆栈的模拟实现|堆栈的工作过程与应用

    堆栈是计算机中重要的数据结构之一,本次课程设计就是要用程序模拟堆栈的实现,我用的是java实现的.

    JAVA 模拟队列的实现

    这是一篇使用java模拟队列实现的程序的课程设计,包含了队列界面的设计以及队列数据结构的模拟实现,是java学习的很好的参照,另外,包含了部分的源代码,具体源代码在其它文件夹。

    java模拟jvm

    这个程序模仿jvm的堆栈管理和指令处理,压缩包中有java工程和一份运行结果文档。

    JAVA快速排序(递归实现与非递归堆栈模拟实现)

    两种方法: 传统的递归快速排序 采用非递归堆栈模拟

    Java实现LRU算法.zip

    该资源是Java实现LRU算法的相关代码,将页面序号和进程分配的模块数,运行出具体的变化过程,真实可靠,可实现。

    java 停车厂模拟管理程序的设计与实现

    在这里假设汽车不能从便道上开走,试设计这样一个停车厂模拟管理程序。 [概要设计] 1.定义Stack接口 2.设计停车场堆栈ParkStack 3.定义Queue接口 4.设计等待队列WaitQueue 5.定义结点类Node 6.搭建管理界面

    JAVA虚拟机(JavaVirtualMachine)V5.0中文官方安装版

    Java虚拟机(JVM)是Java Virtual Machine的缩写,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能模拟来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的...

    栈——经典面试题

    题目:两个栈模拟一个队列,剑指offer书中的题目,用java写的

    sunjava虚拟机(jvm)v1.6官方安装版java(TM)6Update4

    JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 的主要工作是解释自己的...

    SnakeScript Java游戏脚本引擎 v1.1

    SnakeScript是一款JAVA游戏模拟脚本引擎,程序代码类似于C。  本版新增功能及特性:  1.动态优先级设定;  2.动态实现脚本的加载、释放、暂停、恢复、结束等控制;  3.自动堆栈平衡;  4.无限级别函数调用...

    JAVA虚拟机 程序必备

    Java虚拟机(Java Virtual Machine) 简称JVM Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。

    启动服务、启动线程、得到任务堆栈列表的简单代码

    代码在模拟机、真机上都测试通过。android 1.6的平台。 都是很简单的代码,不复杂。特别是得到任务堆栈列表,以前网上看到的代码功能都比较多,比较复杂,作为菜鸟的我,头都看大了。。。。 其实我只想得到任务堆栈...

    Java虚拟机(不错的)

    Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。

    Java虚拟机指令手册+复习面试题+从入门到进阶完整资源合集

    Java Virtual Machine(Java虚拟机),它bai是一个虚构出来du的计算机,是通过在实际的计算机上仿zhi真模拟各种计算机功能dao来实现的,。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令...

    解析Java虚拟机开发

    Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种...

    基于Java实现的IEC 61850源码.zip

    兼容性:该堆栈是用纯 Java 编写的,可以在所有主要操作系统上运行,包括 Windows、macOS 和 Linux。 IEC61850bean 支持以下 IEC 61850 服务: 所有 GetDirectory 和 GetDataDefinition 服务 GetDataValues 和 ...

    深入理解 Java 虚拟机 - v1.0.pdf

    Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种...

    nqueens-local-search:Java中的局部搜索和模拟退火算法

    最初它是在 Java 中递归实现的,这导致了大约 7000 次迭代的堆栈溢出。 使用 while 循环是有效的,您可以进行无限迭代。 你能在 Java 中实现尾调用递归吗? 空间复杂度=邻域的大小? 时间 = 您必须查看的最坏情况板...

    llvm-java-binding:llvm java绑定

    但是,在Java中使用C API会很痛苦,并且大多数LLVM示例/文档/堆栈溢出都是关于以C ++方式使用LLVM。 为了简化LLVM在Java项目中的使用,我们构建了这个库,用于在分析LLVM IR时在Java中编写自己的软件。 该项目的...

Global site tag (gtag.js) - Google Analytics