Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.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
Arrays 用于出列的伪代码_Arrays_Algorithm_Pseudocode_Deque - Fatal编程技术网

Arrays 用于出列的伪代码

Arrays 用于出列的伪代码,arrays,algorithm,pseudocode,deque,Arrays,Algorithm,Pseudocode,Deque,队列将保存在一个称为Q的线性数组中,元素数=limit(编号为0到limit-1)。队列中最早的元素将保存在数组元素0中(在前面),下一个元素保存在数组元素1中,依此类推。变量back存储包含队列中最新元素的数组元素的索引(或-1表示空队列) 如何编写“size”操作(在伪代码中)? **您只需减少包含最后一个元素的索引,然后返回该值。下次添加时,它将覆盖最后一个元素的实际值。伪代码非常简单: dequeue() { returnValue = queue[index]; q

队列将保存在一个称为Q的线性数组中,元素数=limit(编号为0到limit-1)。队列中最早的元素将保存在数组元素0中(在前面),下一个元素保存在数组元素1中,依此类推。变量back存储包含队列中最新元素的数组元素的索引(或-1表示空队列)

如何编写“size”操作(在伪代码中)?
**

您只需减少包含最后一个元素的索引,然后返回该值。下次添加时,它将覆盖最后一个元素的实际值。伪代码非常简单:

dequeue() { 
    returnValue = queue[index]; 
    queue.index = queue.index - 1; 
    return returnValue; 

}

你的算法效率很低。移除操作可以在恒定时间(快)内完成,而不是与元素数量(慢)成线性关系

符合规格,是的。但是O(n)中的出列算法肯定是个坏主意。如果实现循环数组,就不需要for循环;)看,这类“问题”是没有答案的。如果你没有一个精确的,RsinghS。。。我可以返回数组的大小吗??如果您能帮忙,我将不胜感激:)您是指元素的数量还是队列的总容量?如果是元素数,则只需返回索引+1的值。如果是总容量,那么您使用的任何语言都有能力为您提供此值。@Rsingh。。。是的,我刚刚发现它是:返回后-前+1;这可能相当于:返回后+1;