【问题标题】:Single linked list in Python, how to write pop and push?Python中的单链表,pop和push怎么写?
【发布时间】:2011-01-10 18:51:17
【问题描述】:

我正在尝试编写一个使用堆栈中的 Push 和 Pop 的类(使用单链表)。我不确定如何编写推送和弹出功能。我真的需要一个用 Python 编写的简单示例,其中包含以下函数。

Push
Pop
ifEmpty

【问题讨论】:

标签: python stack


【解决方案1】:

来自the docs Dyno Fu 链接到:

列表方法很容易 使用列表作为堆栈,其中最后一个 添加的元素是第一个元素 检索(“后进先出”)。到 将一个项目添加到堆栈的顶部, 使用append()。从 栈顶,使用pop() 没有明确的索引。为了 示例:

>>> stack = [3, 4, 5]
>>> stack.append(6)
>>> stack.append(7)
>>> stack
[3, 4, 5, 6, 7]
>>> stack.pop()
7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6
>>> stack.pop()
5
>>> stack
[3, 4]

最后,致check if a list is empty

>>> my_list = []
>>> not my_list
True

【讨论】:

    【解决方案2】:

    这是最简单的堆栈类:

    class stack(list):
        def push(self,item):
            self.append(item)
        def isEmpty(self):
            return not self
    
    >>> a = stack()
    >>> a.push(1)
    >> a.isEmpty()
    False
    >>> a.pop()
    1
    >>> a.isEmpty()
    True
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-17
      • 2010-09-30
      • 2023-04-01
      • 2018-04-17
      • 1970-01-01
      • 1970-01-01
      • 2016-08-16
      • 2014-01-30
      相关资源
      最近更新 更多