技术栈
栈
bnmoel
2 天前
c语言
·
数据结构
·
算法
·
栈
·
队列
数据结构深度剖析栈与队列:结构、边界实现与进出操作全解析
概念:栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。 栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据也在栈顶。
汉克老师
2 天前
c++
·
栈
·
gesp6级
·
gesp六级
·
数组模拟栈
GESP6级C++考试语法知识(十五、数据结构(一、认识栈 Stack))
👨🍳薯片大师 Stackman!这个桶很特别:只能从顶部放薯片只能从顶部拿薯片下面的薯片永远压在最底下
谙弆悕博士
4 天前
c语言
·
开发语言
·
数据结构
·
算法
·
链表
·
指针
·
栈
【附C语言源码】C语言 栈结构 实现及其扩展操作
栈作为一种基础的数据结构,在表达式求值、函数调用、深度优先搜索等场景中均有广泛应用。栈的实现通常有两种方式:顺序栈(数组)和链式栈(链表)。本实现选择链表方案,主要基于以下考量:
庞轩px
8 天前
内存
·
栈
·
堆
·
缓存命中率
·
变量生命周期
·
字符串常量
第二篇:内存——你的变量到底存在哪
先看一段代码:你可能能答出来:age 在堆里,count 在栈里,"张三" 在字符串常量池里,new Object() 也在堆里。
W.W.H.
9 天前
内存管理
·
栈
·
堆
·
rtos
·
heap
·
stack
嵌入式栈堆管理与内存分配详解
在 MCU(尤其是运行 FreeRTOS 的 Cortex-M)开发中,“堆栈”这个词经常让初学者混淆,因为它其实包含了四个不同的概念。下面我们把整个内存布局梳理清楚。
浅念-
16 天前
数据结构
·
c++
·
算法
·
leetcode
·
职场和发展
·
栈
吃透栈:LeetCode 栈算法题全解析
栈的核心特性是 后进先出(LIFO),它的所有算法应用都围绕这个特性展开。下面我把栈的高频题型、通用思路和模板一次性讲透,帮你建立体系化的解题框架。
_小草鱼_
1 个月前
数据结构
·
数组
·
栈
·
队列
【数据结构】栈和队列
栈和队列都是操作受限的线性表,只允许在固定的一端进行插入和删除操作,核心区别完全来自存取规则。栈就像叠放的盘子、装子弹的弹夹,只能从最顶端放入元素、取出元素。
qeen87
1 个月前
c语言
·
数据结构
·
学习
·
栈
【数据结构】栈及其C语言模拟实现
栈是一种特殊的线性表,它只允许元素在一段插入或者删除,而被插入或者删除的那一段被称之为栈顶相对应的另外一段则被称之为栈底,所以我们不难想象栈是一种先进后出(后进先出)的数据结构
旖-旎
1 个月前
c++
·
算法
·
leetcode
·
力扣
·
栈
栈(验证栈序列)(5)
946. 验证栈序列 - 力扣(LeetCode)验证栈序列的核心在于模拟入栈和出栈的过程。我们使用一个辅助栈,按照 pushed 的顺序依次将元素压入栈中。
郝学胜-神的一滴
1 个月前
数据结构
·
c++
·
程序人生
·
算法
·
栈
二叉树后序遍历:从递归到非递归的优雅实现
二叉树后序遍历:从递归到非递归的优雅实现在数据结构的学习中,二叉树的遍历是绕不开的核心知识点,而后序遍历作为三大基础遍历之一,因根节点的输出顺序后置,在实现上尤其是非递归实现上,有着独特的思维魅力。递归实现后序遍历简洁易懂,但其底层依赖系统栈,在实际开发中可能受栈深度限制;非递归实现则需要我们手动模拟系统栈的工作过程,是对二叉树遍历逻辑和栈结构应用的深度考验。本文将从后序遍历的基本概念出发,先讲解简洁的递归实现,再深入剖析如何通过双栈模拟将递归转为非递归,带你彻底吃透二叉树后序遍历的精髓✨。
xiaoye-duck
1 个月前
c++
·
算法
·
栈
《算法题讲解指南:优选算法-栈》--65.删除字符中的所有相邻重复项,66.比较含退格的字符串,67.基本计算器II,68.字符串解码,69.验证栈序列
🔥小叶-duck:个人主页❄️个人专栏:《Data-Structure-Learning》《C++入门到进阶&自我学习过程记录》 《算法题讲解指南》--优选算法 《算法题讲解指南》--递归、搜索与回溯算法 《算法题讲解指南》--动态规划算法
圣光SG
1 个月前
数据结构
·
学习
·
链表
·
数组
·
栈
·
队列
数据结构通用笔记(语言无关)
Java、Python、JavaScript、C++ 等所有语言,只讲底层结构与逻辑,不讲语法差异,核心是理解“数据如何组织”,而非“用某语言如何写”。
披着羊皮不是狼
2 个月前
数据结构
·
栈
·
底层原理
深度解构栈内存的物理逻辑与系统保护
在高级语言中,栈溢出通常意味着一个响亮的报错(如 StackOverflowError)。但在底层开发或缺乏硬件保护(无 MMU)的嵌入式场景下,溢出往往是以一种极其隐蔽的方式发生的:静默修改邻居数据。
iFlyCai
2 个月前
栈
·
数据结构与算法
栈的概念和用法
在日常编程中,你是否遇到过这样的场景:浏览器中的“后退”按钮、文本编辑器的“撤销”操作、函数调用的层层嵌套、表达式求值的优先级处理?这些看似不同的功能,背后都依赖于同一种数据结构——栈。
Q741_147
2 个月前
算法
·
leetcode
·
模拟
·
栈
·
映射
每日一题 力扣 2751.机器人碰撞 映射 模拟 栈 C++ 题解
力扣 2751.机器人碰撞示例 1: 输入:positions = [5,4,3,2,1], healths = [2,17,9,15,10], directions = “RRRRR” 输出:[2,17,9,15,10] 解释:在本例中不存在碰撞,因为所有机器人向同一方向移动。所以,从第一个机器人开始依序返回健康度,[2, 17, 9, 15, 10] 。
Book思议-
2 个月前
c语言
·
数据结构
·
算法
·
栈
·
队列
【数据结构】栈与队列全方位对比 + C 语言完整实现
栈(Stack)和队列(Queue)是数据结构中最基础、最重要的受限线性表,是算法与程序设计的核心基石。二者逻辑结构均为线性结构,仅在操作规则上存在限制,却衍生出完全不同的应用场景。
Book思议-
2 个月前
数据结构
·
算法
·
栈
·
后缀表达式
·
后缀转中缀
【数据结构实战】栈的经典应用:后缀表达式求值 +中缀转后缀 ,原理 + 代码双通透
在数据结构的栈应用中,后缀表达式(逆波兰表达式)是经典的实战场景。相较于我们日常使用的中缀表达式,后缀表达式无需括号即可明确表达运算优先级,极大简化了计算机的表达式解析过程。本文将从后缀表达式的核心概念出发,结合 C 语言完整代码,讲解后缀表达式求值和中缀表达式转后缀表达式的实现思路,同时对代码进行逐行详细注释,让新手也能轻松理解。
Q741_147
2 个月前
c++
·
算法
·
leetcode
·
矩阵
·
模拟
·
数组
·
栈
每日一题 力扣 2946. 循环移位后的矩阵相似检查 力扣 155. 最小栈 数学 数组 模拟 C++ 题解
力扣 2946. 循环移位后的矩阵相似检查示例 1: 输入:mat = [[1,2,1,2],[5,5,5,5],[6,3,6,3]], k = 2 输出:true 解释: 初始矩阵如图一所示。 图二表示对奇数行右移一次且对偶数行左移一次后的矩阵状态。 图三是经过两次循环移位后的最终矩阵状态,与初始矩阵相同。 因此,返回 true 。
Book思议-
2 个月前
数据结构
·
算法
·
链表
·
栈
·
408
【数据结构实战】C语言实现栈的链式存储:从初始化到销毁,手把手教你写可运行代码
栈是一种非常经典的 ** 后进先出(LIFO)** 线性数据结构。在 C 语言中,栈有两种常见实现方式:顺序栈(数组实现)和链式栈(链表实现)。
Book思议-
2 个月前
c语言
·
数据结构
·
算法
·
栈
【数据结构实战】川剧 “扯脸” 与栈的 LIFO 特性 :用 C 语言实现 3 种栈结构
川剧 “扯脸” 是极具特色的变脸手法:事先将白色、黄色、黑色、红色、青色、金色、银色的脸谱依次贴在脸上,表演时在动作掩护下从最后贴的那张开始,一张一张扯下。