Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java中删除队列中的元素_Java_Data Structures_Queue - Fatal编程技术网

java中删除队列中的元素

java中删除队列中的元素,java,data-structures,queue,Java,Data Structures,Queue,编写publicstaticvoidremove(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。如果您使用任何链接列表实现队列,这是非常容易的

编写publicstaticvoidremove(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。

如果您使用任何链接列表实现队列,这是非常容易的。 当您将这个问题标记为“java”时,您可以使用
java.util.ArrayList


看起来,这是一个家庭作业问题,

是否允许使用额外的空间?您应该使用链表来实现,您不需要任何额外的空间。这是一个家庭作业问题。
java.util.ArrayList
不是链表。