哪种数据结构同时支持推和弹出以及入队/出队操作? push和pop都是堆栈,入队/出队都在队列中。现在,一个数据结构如何支持所有4个。
答案 0 :(得分:0)
如文档所述,Deque可以用作FIFO(先进先出)队列,也可以用作LIFO(先进先出)堆栈。
您要查找的队列方法是addFirst(e)
,它等效于enqueue
和addLast(e)
,在其他语言中被称为dequeue
。
它还具有push(e)
和pop()
方法。
答案 1 :(得分:0)
如果您希望使用不同的数据结构来实现上述功能,那么双向链表将是完美的选择。您可以保留2个指针,一个在头,另一个在头。 LIFO和FIFO技术可以与此类似。