写方法public staticvoid remove(Queueq,int [] pos,int k),它删除位于pos中指示的位置的q的所有元素(k是pos的大小)。假设pos按递增顺序排序,没有重复,只包含有效位置。位置的编号从头部的0开始。该方法必须在O(n)中运行,其中n是q的大小(不是O(kn))。 示例:如果q:A,B,C,D,E,F,G,H和pos:1,2,5,则在调用remove(q,pos,3)之后,q变为A,D,E,G ,H。
答案 0 :(得分:1)
如果使用任何LinkedList实现Queue,这非常容易。
当您将此问题标记为“java”时,您可以使用java.util.ArrayList
看起来,这是作业问题,