`

栈(java)

阅读更多
/**
 * TODO
 */
package com.xeezee.collection;

/**
 * 栈
 * 
 * @author luoqinglong
 * @date 2012-7-31
 */
public class Stack {
	private final int size;
	private final long[] stackArray;
	private int top;

	public Stack(int caption) {
		this.size = caption;
		this.stackArray = new long[caption];
		this.top = -1;
	}

	public void push(long i) {
		if (!this.isFull()) {
			this.stackArray[++this.top] = i;
		}
	}

	public long pop() {
		return this.stackArray[this.top--];
	}

	public long peek() {
		return this.stackArray[this.top];
	}

	public boolean isFull() {
		return this.top == this.size - 1;
	}

	public boolean isEmpty() {
		return this.top == -1;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Stack stack = new Stack(10);

	}

}
 
分享到:
评论

相关推荐

    线性表,单链表,栈 java实现

    Java中栈的实现可以使用`java.util.Stack`类,它是`Vector`类的子类,提供了`push()`, `pop()`, `peek()`等方法。 在给定的文件“王倩”中,很可能包含了实现这些数据结构的Java源代码。通过阅读和理解这些代码,你...

    MiGong.rar_java 栈_migong_动态迷宫_栈 java

    在IT领域,迷宫求解是一个经典的问题,而在这个场景中,我们看到的是一个使用Java编程语言实现的迷宫求解算法,它基于栈数据结构。这个名为"Migong.rar"的压缩包包含了一个名为"MiGong"的程序,以及一个可能是链接或...

    Java 研发技术栈 Java 研发技术栈

    java学习路线

    剑指offer算法实现java版——面试题21包含min函数的栈

    实现一个栈,要求使用O(1)时间获取栈中最小值,O(1)执行pop、push操作。

    JAVA个人发展技术栈

    JAVA个人发展技术栈

    Java中堆内存和栈内存详解

    ### Java中堆内存和栈内存详解 #### 一、引言 Java作为一种广泛使用的编程语言,其内存管理机制是理解程序行为的关键。本文将深入探讨Java中的两种主要内存区域:堆内存(Heap Memory)和栈内存(Stack Memory)。...

    java 栈的实现和应用

    Java栈是一种基于后进先出(LIFO)原则的数据结构,它在计算机科学和编程中具有广泛的应用。本文将深入探讨Java中栈的实现以及其在实际应用中的使用。 首先,我们来理解栈的基本概念。栈是一种特殊类型的线性数据...

    栈的Java语言实现

    ### 栈的Java语言实现详解 #### 一、栈的基本概念 栈是一种特殊的线性表,只允许在表的一端进行插入和删除操作,这一端称为栈顶(Top)。另一端称为栈底(Bottom),当表中无任何元素时称为空栈。栈遵循后进先出...

    java实现的栈(通过数组)

    java api 中也有stack,这个是根据stack的特性编写出来的; 此程序在功能上和java提供的功能是一样的,只是实现的方法不一样;

    java中堆与栈的区别

    ### Java中堆与栈的区别详解 #### 一、概述 在Java编程语言中,了解堆与栈的区别对于理解和管理程序的内存使用至关重要。本文将详细解释Java中的堆和栈的概念,以及它们之间的区别。 #### 二、Java堆 Java堆是...

    Java中的堆和栈[定义].pdf

    Java 中的堆和栈 Java 中的堆和栈是 Java 语言中两个重要的内存区域,它们扮演着不同的角色,管理着 Java 程序中的内存分配和释放。 堆(Heap) 堆是一个运行时数据区,用于存放由 new 创建的对象和数组。Java ...

    java中关于栈的使用

    关于栈的使用,内有关于使用的示例 栈的应用举例 1. 将10进制正整数num转换为n进制 private String conversion(int num, int n) { MyStack<Integer> myStack = new MyArrayStack(); Integer result = num; ...

    栈的java版演示栈的java版演示栈的java版演示

    在IT行业中,栈是一种基础且重要的数据结构,尤其在编程语言如Java中有着广泛的应用。栈遵循“后进先出”(LIFO)的原则,即最后压入的元素最先弹出。栈通常用于函数调用、表达式求值、括号匹配等场景。下面我们将...

    跟着铁哥学Java,MyStore项目 CH00--技术栈、路线图

    跟着铁哥学Java,MyStore项目 CH00--技术栈、路线图 本文将对跟着铁哥学Java,MyStore项目 CH00--技术栈、路线图进行详细的知识点解析,涵盖Java后端技术栈、前后端分离架构、Spring Boot框架、MyBatis Plus持久层...

    线性链表,栈(java版)代码

    "线性链表,栈(java版)代码"这个标题暗示了提供的代码可能包括线性链表和栈的Java实现,尤其是使用这些数据结构进行实际操作,如在main方法中可能有对链表和栈的操作演示。描述中的“最新”和“简单,易懂”意味着...

    Java多线程编程总结

    Java线程:线程栈模型与线程的变量 Java线程:线程状态的转换 Java线程:线程的同步与锁 Java线程:线程的交互 Java线程:线程的调度-休眠 Java线程:线程的调度-优先级 Java线程:线程的调度-让步 Java线程:线程...

    java虚拟机整理文档(面试使用)

    Java虚拟栈(Java Virtual Machine Stack)同样为每个线程私有,用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每当线程调用一个方法,就会在虚拟栈上创建一个栈帧,方法执行完毕后,对应的栈帧也会被...

    详解java堆和栈

    ### 详解Java堆和栈 #### 一、引言 在Java编程中,理解堆(Heap)和栈(Stack)的概念及其区别对于程序员来说至关重要。本文将深入剖析这两个概念,并探讨它们之间的差异以及如何影响程序的运行。 #### 二、Java...

    java中的栈(深层了解java虚拟机对对象的内存分布)

    ### 深层解析Java虚拟机中的栈与堆:对象的内存分布 #### 核心概念:栈与堆的本质及作用 在Java编程语言中,理解栈(stack)和堆(heap)的概念及其工作原理对于深入掌握Java虚拟机(JVM)如何管理内存至关重要。栈和堆...

    Java基础技术栈图解大全-xmind源文件

    Java基础技术栈是Java开发人员必须掌握的核心技能集,它涵盖了编程语法、数据结构、面向对象编程、异常处理、输入/输出(I/O)、集合框架、多线程、网络编程等多个方面。对于初学者来说,理解并掌握这些知识点至关重要...

Global site tag (gtag.js) - Google Analytics