实施ADT双端队列。此ADT类似于队列,但支持从队列的任何一端添加和删除的功能。
看来我正在努力解决这个问题。这就是我的尝试:
class deq:
def __init__(self):
self.item = []
def is_empty(self):
return self.item == None
def size(self):
return len(self.item)
def add_front(self, item):
self.item.insert(0,item)
def add_back(self, item):
selft.item.append(item)
def remove_front(self, item):
self.item.remove(item)
def remove_back(self, item):
self.item.pop()
输出的示例屏幕截图: This is the sample output
答案 0 :(得分:0)
remove_front和remove_back不应该使用一个项目(根据这些测试并根据队列的内容)。
remove_front总是删除第一个元素,remove_back总是删除最后一个元素。所以这些函数不需要传递一个项目。
def remove_front(self):
self.item.pop(0)
def remove_back(self):
self.item.pop()
通过查看测试失败的原因,您可以在2秒钟内自行调试:“缺少1个位置参数”。这意味着自动化测试调用您的函数的参数少于函数预期的参数。