【问题标题】:How do I find out if a value is in a deque?如何确定一个值是否在双端队列中?
【发布时间】:2015-04-03 10:05:31
【问题描述】:

假设我有一个值为 [0,3,5,1,5,8] 的双端队列。我想保存关于双端队列的所有信息,包括订单,但我必须找出值 5 是否在双端队列中。

什么是可以确定这一点的伪代码?

【问题讨论】:

    标签: python queue deque


    【解决方案1】:

    您知道in 运算符吗?

    >>> import collections
    >>> d = collections.deque([0,3,5,1,5,8])
    >>> 5 in d
    True
    >>> 20 in d
    False
    

    【讨论】:

    • 对于collections.deque 类似函数的list.index() 的一个好的实现是什么?谢谢
    • 操作的时间复杂度如何
    【解决方案2】:

    虽然大多数时候您希望使用 in 运算符进行成员资格测试,deques 支持,但您也可以选择使用它的 count() 方法 - 实际上提供了 更多 信息等可能更有用,具体取决于您要完成的工作。

    >>> import collections
    >>> d = collections.deque([0, 3, 5, 1, 5, 8])
    >>> d.count(5)
    2
    >>> d.count(20)
    0
    >>> bool(d.count(5))
    True
    >>> bool(d.count(20))
    False
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-31
      • 2020-09-24
      • 2020-01-07
      • 1970-01-01
      • 2018-07-02
      • 2023-03-28
      相关资源
      最近更新 更多