栈

173 字
1 分钟
栈

栈是一个后进先出的结构,像一个蜂窝煤炉子

image-20250505095836099
image-20250505095836099

放进去是push, 弹出就是pop。栈顶就是top。

对应的就是Array的方法push和pop,栈顶可以表示为 arr[arr.length-1]

栈可能需要的方法

  • size 获取栈大小
  • peek 获取栈顶元素
  • clear 清空栈

JavaScript是没有栈的,但是JS的数组可以实现栈。

const stack = []
stack.push('1')
stack.push('2')
stack.pop()
stack.pop()
console.log(stack)

使用场景

  • 十进制转二进制
  • 栈可以检查字符串的括号是否有效闭合
  • 倒序输出
  • 浏览器历史记录
  • JS的函数调用背后也是栈来控制顺序,JS的词法环境也是栈来控制

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

栈
https://an2333.com/posts/basic/algorithm/stack/
作者
Annan
发布于
2025-05-05
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Annan
写点前端,聊点 AI。
公告
博客已迁移到 Astro + Firefly,旧文章正在陆续搬家中。
分类
标签
站点统计
文章
50
分类
7
标签
28
总字数
84,160
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0

当前页面没有目录

文章目录

当前页面没有目录