python deque按索引删除项目

Den*_*nly 2 python deque

有什么办法可以按索引删除双端队列中的项目?

例如

dq = deque(['a','b','c'])
dq.removeByIndex(1) 
#output deque(['b', 'c'])
Run Code Online (Sandbox Code Playgroud)

我只在文档中看到按值删除。我也知道我可以把它弹出几次然后放回去,但是看起来并不漂亮。谢谢。

参考 https://docs.python.org/2/library/collections.html#collections.deque

小智 5

您可以尝试以下方法:

from collections import deque
deq = deque([1, 2, 3, 4])

del deq[1]
print(deq)
Run Code Online (Sandbox Code Playgroud)

输出:

deque([1, 3, 4])
Run Code Online (Sandbox Code Playgroud)

  • 复杂程度如何?`O(n)` 或 `O(1)` (3认同)
  • 不幸的是,它是“O(n)”:/sf/ask/4070654101/ (2认同)