数据结构与算法(flutter)之栈(四)

(stack)又称为堆栈堆叠, 栈作为一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。栈具有记忆作用,对栈的插入与删除操作中,不需要改变栈底指针。

栈是允许在同一端进行插入和删除操作的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。插入一般称为进栈(PUSH),删除则称为退栈(POP)。

由于堆叠数据结构只允许在一端进行操作,因而按照后进先出(LIFO, Last In First Out)的原理运作。栈也称为后进先出表。

参考资料

数据结构与算法详解

相关推荐
星期天22 分钟前
3.2联合体和枚举enum,还有动态内存malloc,free,calloc,realloc
c语言·开发语言·算法·联合体·动态内存·初学者入门·枚举enum
Andy28 分钟前
回文子串数目--动态规划算法
算法·动态规划
sin_hielo31 分钟前
leetcode 1930
算法·leetcode
塞北山巅34 分钟前
相机自动曝光(AE)核心算法——从参数调节到亮度标定
数码相机·算法
聆风吟º36 分钟前
【数据结构入门手札】算法核心概念与复杂度入门
数据结构·算法·复杂度·算法的特性·算法设计要求·事后统计方法·事前分析估算方法
vir021 小时前
密码脱落(最长回文子序列)
数据结构·c++·算法
福尔摩斯张2 小时前
二维数组详解:定义、初始化与实战
linux·开发语言·数据结构·c++·算法·排序算法
冰西瓜6002 小时前
模与内积(五)矩阵分析与应用 国科大
线性代数·算法·矩阵
努力学算法的蒟蒻2 小时前
day17(11.18)——leetcode面试经典150
算法·leetcode·面试
缘友一世2 小时前
模型微调DPO算法原理深入学习和理解
算法·模型微调·dpo