使用test_deque()函数测试Python中的双端队列实现
发布时间:2023-12-15 13:34:37
双端队列(Deque)是一种具有队列和栈的性质的数据结构,允许我们在队列两端进行插入和删除元素的操作。在Python中,我们可以使用collections模块中的deque类来实现双端队列。
为了测试Python中的双端队列,我们可以编写一个名为test_deque()的函数,该函数将演示双端队列的各种操作,并提供使用示例。
下面是一个示例的test_deque()函数的实现:
from collections import deque
def test_deque():
# 创建双端队列
dq = deque()
# 在队列的右侧插入元素
dq.append(1)
dq.append(2)
dq.append(3)
# 在队列的左侧插入元素
dq.appendleft(0)
# 输出队列的元素
print("Deque elements:", end=" ")
for element in dq:
print(element, end=" ")
# 访问队列的 个元素和最后一个元素
first_element = dq[0]
last_element = dq[-1]
print("
First element:", first_element)
print("Last element:", last_element)
# 删除队列的 个元素和最后一个元素
dq.popleft()
dq.pop()
# 输出队列的元素
print("
Deque elements after deletion:", end=" ")
for element in dq:
print(element, end=" ")
# 判断队列是否为空
is_empty = not bool(dq)
print("
Is deque empty?", is_empty)
# 获取队列的长度
length = len(dq)
print("Deque length:", length)
# 调用test_deque()函数进行测试
test_deque()
在上面的示例代码中,我们首先从collections模块导入deque类。然后,我们创建了一个空的双端队列dq,并依次在队列的右侧插入了三个元素1、2和3。接下来,我们使用appendleft()方法在队列的左侧插入了元素0。
然后,我们使用一个循环遍历了队列中的所有元素,并输出了队列的元素。接着,我们使用dq[0]和dq[-1]分别访问了队列的 个元素和最后一个元素,并将它们输出到控制台。
然后,我们使用popleft()方法删除了队列的 个元素,并使用pop()方法删除了队列的最后一个元素。再次使用一个循环遍历了队列中的所有元素,并输出了队列的元素。
接下来,我们使用bool()函数判断了队列是否为空,将判断结果输出到控制台。然后,我们使用len()函数获取了队列的长度,并将长度输出到控制台。
最后,我们调用test_deque()函数进行测试,看看所有操作是否正常运行。
以上就是使用test_deque()函数测试Python中双端队列的一个例子。运行上述代码,您将看到双端队列的各种操作的结果,并且可以根据需要对代码进行修改和扩展。
