1. 栈结构实现
  2. 栈的操作

栈结构实现

栈可以用顺序表实现,也可以用链表实现。

栈的操作

  • Stack() 创建一个新的空栈
  • push(item) 添加一个新的元素item到栈顶
  • pop() 弹出栈顶元素
  • peek() 返回栈顶元素
  • is_empty() 判断栈是否为空
  • size() 返回栈的元素个数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# coding:utf-8


class Stack(object):
"""?"""
def __init__(self):
self.__list = []

def push(self, item):
"""????"""
self.__list.append(item)

def pop(self):
"""??????"""
return self.__list.pop()

def peek(self):
"""??????"""
if self.__list:
return self.__list[-1] # -1????????
else:
return None

def is_empty(self):
"""???????"""
return self.__list == []

def size(self):
"""????????"""
return len(self.__list)


if __name__ == '__main__':
s = Stack()
s.push(1)
s.push(3)

print(s.pop())
print(s.pop())

转载请注明来源,欢迎指出任何有错误或不够清晰的表达。可以邮件至gxnucgb@qq.com

文章标题:

文章字数:150

本文作者:陈桂彬

发布时间:2019-08-14, 09:19:33

最后更新:2019-08-16, 10:47:30

原始链接:https://github.com/gxnucgb/gxnucgb.github.io/2019/08/14/栈/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏

github