欢迎访问宙启技术站
智能推送

使用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中双端队列的一个例子。运行上述代码,您将看到双端队列的各种操作的结果,并且可以根据需要对代码进行修改和扩展。