返回介绍

Stack

发布于 2025-02-22 13:01:20 字数 1133 浏览 0 评论 0 收藏 0

栈是一种 LIFO(Last In First Out) 的数据结构,常用方法有添加元素,取栈顶元素,弹出栈顶元素,判断栈是否为空。

编程实现

Python

stack = []
len(stack) # size of stack

# more efficient stack
import collections
stack = collections.deque()

list 作为最基本的 python 数据结构之一, 可以很轻松的实现 stack 。 如果需要更高效的 stack , 建议使用 deque

Methods

  • len(stack) != 0 - 判断 stack 是否 weikong
  • stack[-1] - 取栈顶元素,不移除
  • pop() - 移除栈顶元素并返回该元素
  • append(item) - 向栈顶添加元素

Java

Deque<Integer> stack = new ArrayDeque<Integer>();
s.size(); // size of stack

JDK doc 中建议使用 Deque 代替 Stack 实现栈,因为 Stack 继承自 Vector ,需要 synchronized ,性能略低。

Methods

  • boolean isEmpty() - 判断栈是否为空,若使用 Stack 类构造则为 empty()
  • E peek() - 取栈顶元素,不移除
  • E pop() - 移除栈顶元素并返回该元素
  • E push(E item) - 向栈顶添加元素

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文