【问题标题】:Adding elements into queue from a list Python从列表Python中将元素添加到队列中
【发布时间】:2018-07-29 05:02:55
【问题描述】:

有没有办法将列表的元素添加到双端队列列表中,然后使用队列,然后弹出其中的元素?假设我有清单:

a = [4,-1,4,1,1]

我想按顺序添加。首先将-1添加到队列中,然后通过其他方式运行它弹出-1,然后添加1s运行它然后弹出其中的元素,然后4s运行队列然后弹出其中的元素。

【问题讨论】:

  • from collections import deque; b = deque(a)

标签: python list deque


【解决方案1】:

目前还不清楚你到底想做什么。您应该包含更多您尝试实现的代码。

您可以对您的list 进行反向排序,并将其逐步添加到您的deque

from collections import deque
a = [4, -1, 4, 1, 1]

sorted_a = sorted(a, reverse=True)

a_deque = deque()
a_deque.append(sorted_a.pop())

如果您想以上述方式使用deque,这可能就是您正在寻找的:

# Reverse sorts a list so that calling pop()
# pop's elements "in order".
a_sorted_list = sorted(a, reverse=True)
a_reverse_sorted_deque = deque(a_sorted_list)

a_reverse_sorted_deque.pop()

# A regularly sorted list would require you to
# popleft
a_sorted_deque = deque(sorted(a))
a_sorted_deque.popleft()

【讨论】:

    猜你喜欢
    • 2016-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-10
    • 1970-01-01
    • 1970-01-01
    • 2015-03-07
    • 2021-09-10
    相关资源
    最近更新 更多