Python Stack 堆栈 数据结构

使用数组实现栈(使用 Python 的 list 实现):

class Stack:

def __init__(self):

self.data = []

s1 = Stack()

s1.push(1)

s1.push(2)

push(item) —— 向栈顶添加元素

def push(self, item):

self.data.append(item)

pop() —— 弹出栈顶的元素,若栈为空则报错

def pop(self):

if self.data:

return self.data.pop()

else:

raise PopError("Pop from empty stack.")

peek() —— 返回栈顶的元素(但是不弹出),若栈为空则报错

def peek(self):

if self.data:

return self.data[-1]

else:

raise IndexError("Stack is empty.")

size() —— 返回栈的长度

is_empty() —— 判断栈是否为空

介绍

栈也叫堆栈(这里面的堆不是数据结构的堆)栈满足 后进先出 LIFO 的原则,时间复杂度:压栈、出栈都是 O(1)

以上是 Python Stack 堆栈 数据结构 的全部内容, 来源链接: utcz.com/z/264512.html

回到顶部