最近在自学数据结构,上面写到建立一个空栈,然而书中仅有关于栈(队列)的类,却没有提到怎么样导入(栈和队列)的类,在网上查询也没有查到,最后还是在后面的阅读中发现了导入的库,如下:
from pythonds.basic import Stack
strack=Strack()
这样一个空栈就建立好了,后续还可以对他进行操作。
class Stack:
def __init__(self):
self.__data = []
def isEmpty(self):
"""判断栈是否为空"""
return self.__data == []
def push(self, data):
"""在栈顶添加元素"""
self.__data.append(data)
def pop(self):
"""弹出顶部元素"""
return self.__data.pop()
def peek(self):
"""返回栈顶元素"""
# 先判断是否为空
if self.isEmpty():
return
else:
return self.__data[-1]
def size(self):
"""判断长度"""
return len(self.__data)
def travel(self):
"""遍历所有元素"""
self.__data = self.__data[::-1]
for i in self.__data:
print(i)
同样,队列的话也是如此:
from pythonds.basic import Queue
q=Queue()
# 貌似也可以直接这样
import queue
q = queue.Queue()