Python-栈
2020-12-13 15:20
标签:container 资讯 数据 ble 文本 访问 cas man def 栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。没有了位置概念,保证任何时候可以访问、删除的元素都是此前最后存入的那个元素,确定了一种默认的访问顺序。 Python-栈 标签:container 资讯 数据 ble 文本 访问 cas man def 原文地址:https://www.cnblogs.com/heimaguangzhou/p/11578522.html
由于栈数据结构只允许在一端进行操作,因而按照后进先出(LIFO, Last In First Out)的原理运作。
Python实现
class
Stack(
object
):
def
__init__(
self
):
self
.__item
=
[]
# push(item) 添加一个新的元素item到栈顶
def
push(
self
, data):
self
.__item.append(data)
# pop() 弹出栈顶元素
def
pop(
self
):
return
self
.__item.pop()
# peek() 返回栈顶元素
def
peek(
self
):
return
self
.__item[
len
(
self
.__item)
-
1
]
# is_empty() 判断栈是否为空
def
is_empty(
self
):
return
not
self
.size()
# size() 返回栈的元素个数
def
size(
self
):
return
len
(
self
.__item)
if
__name__
=
=
"__main__"
:
s
=
Stack()
s.push(
1
)
s.push(
2
)
s.push(
3
)
print
(s.pop())
print
(s.pop())
print
(s.pop())
print
(s.is_empty())
print
(s.size())