Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >堆栈的实现

堆栈的实现

作者头像
小雨的分享社区
发布于 2022-10-26 06:49:41
发布于 2022-10-26 06:49:41
75500
代码可运行
举报
文章被收录于专栏:小雨的CSDN小雨的CSDN
运行总次数:0
代码可运行

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。

进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。

压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据在栈顶

使用顺序表的方式实现

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//栈操作
public class MyStack {
    //管理一些int元素即可,不考虑扩容问题
    private int[] array = new int[100];
    private int size = 0; //栈中出现多少个有效元素

    //入栈
    public void push(int x){
        array[size] = x;
        size++;
    }

    //取栈顶元素
    public int peek(){
        return array[size-1];
    }

    //出栈
    public int pop(){
        int ret = array[size-1];
        size--;
        return ret;
    }
}

具体方法实现

方法

含义

push()

压栈

pop()

出栈

peek()

取栈顶元素

empty()

判断栈是否为空

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【数据结构四】栈与Stack详解
Java中的Stack继承了Vector,Vector和ArrayList类似,都是动态的顺序表,不同的是Vector是线程安全的。Stack继承了Vector的所有方法,也有一些自己的方法,如下:
小皮侠
2024/04/08
1020
【数据结构四】栈与Stack详解
知识改变命运 数据结构【栈和队列】
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据在栈顶。
用户11319080
2024/10/17
740
知识改变命运 数据结构【栈和队列】
栈(stac)详解及应用
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。
破晓的历程
2024/06/24
1090
栈(stac)详解及应用
【数据结构】栈和队列
栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出 LIFO(Last In First Out)的原则。 333后进,最先出去。
xxxflower
2023/04/16
2500
【数据结构】栈和队列
栈(Stack) 原
栈又称堆栈,是限制在表的一端进行插入和删除运算的线性表。 表中进行插入、删除操作的一端称为栈顶(top)。 栈顶保存的元素称为栈顶元素。 表的另一端称为栈底(bottom)。 当栈中没有元素时称为空栈。 向一个栈中插入元素称为进栈或入栈或压栈(push)。插入的元素是当前最新的。 从一个栈中删除元素称为出栈或退栈或弹栈(pop)。删除的元素是当前最新的。 由于栈的插入和删除仅在栈顶进行,后进栈的元素必定先出栈,所以把堆栈称为后进先出表(Last In First Out,LIFO)。 当栈满时进栈运算称为上溢;当栈空时出栈运算称为下溢。
云飞扬
2019/03/13
7380
栈(Stack)
                                                                            原
【Java数据结构学习笔记之二】Java数据结构与算法之栈(Stack)实现
  本篇是java数据结构与算法的第2篇,从本篇开始我们将来了解栈的设计与实现,以下是本篇的相关知识点: 栈的抽象数据类型 顺序栈的设计与实现 链式栈的设计与实现 栈的应用 栈的抽象数据类型   栈是一种用于存储数据的简单数据结构,有点类似链表或者顺序表(统称线性表),栈与线性表的最大区别是数据的存取的操作,我们可以这样认为栈(Stack)是一种特殊的线性表,其插入和删除操作只允许在线性表的一端进行,一般而言,把允许操作的一端称为栈顶(Top),不可操作的一端称为栈底(Bottom),同时把插入元素的操作称
Angel_Kitty
2018/04/09
7390
【Java数据结构学习笔记之二】Java数据结构与算法之栈(Stack)实现
Java数据结构和算法(四)——栈
根据提供的文章内容,总结了关于使用栈实现字符串逆序和分隔符匹配的要点,并返回了json格式的摘要总结。
IT可乐
2018/01/04
9010
Java数据结构和算法(四)——栈
《Java初阶数据结构》----4.<线性表---Stack栈和Queue队列>
用户11288958
2024/09/24
860
《Java初阶数据结构》----4.<线性表---Stack栈和Queue队列>
栈和队列深入浅出
1. 概念: 栈一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的数据元素遵守先进后出的原则。
用户11305962
2024/10/09
1130
栈和队列深入浅出
数据结构-4.栈与队列
栈: 一种特殊的线性表, 只许在固定的一端进行插入和删除元素操作. 进行数据插入和删除操作的一端称为栈顶, 另一端称为栈底. 栈中的数据元素遵守后进先出的原则.
用户11369350
2024/11/19
560
数据结构-4.栈与队列
数据结构与算法(六)-背包、栈和队列
  前言:许多基础数据类型都和对象的集合有关。具体来说,数据类型的值就是一组对象的集合,所有操作都是关于添加、删除或是访问集合中的对象。而且有很多高级数据结构都是以这样的结构为基石创造出来的,在本文中,我们将了解学习三种这样的数据类型,分别是背包(Bag)、栈(Stack)和队列(Queue)
2018/09/27
1.1K0
数据结构与算法(六)-背包、栈和队列
Java中的栈和队列
在计算机科学中,数据结构是用来组织和存储数据的方式,以便可以高效地访问和修改。栈和队列是两种最基本的数据结构,它们在各种计算过程中都有广泛的应用。本文将介绍栈和队列的概念、特性以及它们的一些常见应用。
用户11070251
2024/04/21
4220
Java中的栈和队列
数据结构与算法(2)——栈和队列栈队列LeetCode 相关题目整理其他题目整理
栈是一种用于存储数据的简单数据结构(与链表类似)。数据入栈的次序是栈的关键。可以把一桶桶装的薯片看作是一个栈的例子,当薯片做好之后,它们会依次被添加到桶里,每一片都会是当前的最上面一片,而每次我们取的时候也是取的最上面的那一片,规定你不能破坏桶也不能把底部捅穿,所以第一个放入桶的薯片只能最后一个从桶里取出;
我没有三颗心脏
2018/07/24
1.3K0
【数据结构】线性表(六)堆栈:顺序栈及其基本操作(初始化、判空、判满、入栈、出栈、存取栈顶元素、清空栈)
堆栈(简称栈)是一种操作受限的线性表,只允许在表的同一端进行插入和删除操作,且这些操作是按后进先出的原则进行的。进行插入和删除的一端被称为栈顶,另一端被称为栈底。当栈中无元素时称其为空栈。根据上述定义,每次删除(退栈)的总是最后插入(进栈)的元素。
Qomolangma
2024/07/30
4170
【数据结构】线性表(六)堆栈:顺序栈及其基本操作(初始化、判空、判满、入栈、出栈、存取栈顶元素、清空栈)
栈的Java简单实现
  进行插入和删除操作的一端称为“栈顶”(top),另一端称为“栈底”(bottom)。
Rekent
2018/09/04
1.1K0
【数据结构】栈和队列详解&&栈和队列实现
栈中的数据元素遵守后进先出LIFO,(Last In First Out)的原则
用户10925563
2024/06/04
1350
【数据结构】栈和队列详解&&栈和队列实现
数据结构之栈和队列(超详解)
栈:⼀种特殊的线性表,只允许在固定的⼀端进行插入和删除元素操作。数据插入和删除操作 的一端称为栈顶,另⼀端称为栈底。栈中的元素遵守后进先出(或先进后出)的原则。
egoist祈
2025/02/04
1730
数据结构之栈和队列(超详解)
重学数据结构(二、栈)
比如上面的羽毛球筒,只能将最顶端的羽毛球移出,也只能将新的羽毛球放到最顶端——这两种操作分别称作入栈( Push)和出栈( Pop)。入栈和出栈的示意图如下:
三分恶
2020/08/30
3730
【数据结构】栈的基本知识详解
大家好,很高兴又和大家见面了!!! 今天开始,咱们将正式进入【数据结构】第三章的内容介绍。在第三章的内容中,我们需要掌握栈和队列的操作及其特征,以及数组与特殊矩阵的压缩存储等知识点。为了更好的掌握这些知识点,我们将对这些知识点进行一一介绍。 今天要介绍的是咱们的第一位新朋友——栈。我们在今天的篇章中需要搞清楚以下几个问题:
蒙奇D索隆
2024/01/09
4540
【数据结构】栈的基本知识详解
动图演示:手撸堆栈的两种实现方法!
正式开始之前,先和各位朋友聊聊后期的一些打算,后面的文章计划写一些关于数据结构和算法的内容,原因很简单底层结构决定上层建筑嘛,对于框架满天飞的今天,我们不止要学习如何使用框架,更要了解它的原理以及底层数据结构,只有这样我们才能更好的应用它。
磊哥
2020/09/24
3370
推荐阅读
相关推荐
【数据结构四】栈与Stack详解
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验