具有堆序的双端队列是由一些项的表组成的数据结构,可以对其进行下列操作:
Push(X,D): 将项X插入到双端队列D的前端。
Pop(D):从双端队列D中除去前端项并将它返回。
Inject(X,D): 把项X插入到双端队列D的尾端。
Eject(D):从双端队列D中除去尾端项并将它返回。
FindMin(D): 返回双端队列D的最小项。
a. 描述如何以每个操作常数摊还时间支持这些操作。
b. 描述如何以每个操作常数最坏情形时间支持这些操作。
