我将其称为队列,但根据wikipedia,队列是先进先出数据结构。
您添加到“前面”。你从“结束”中删除。
我正在做相反的事情。
我正在加入“结束”。并从“前面”删除。 (使用push()和shift())
因为前端和后端没有任何具体含义,方向甚至不重要吗?
我刚刚从维基百科和mdn中删除了一些例子。
我可以将其称为队列吗?
答案 0 :(得分:3)
我可以将其称为队列吗?
<强>绝对即可。你引用的定义是正确的;队列是“FIFO”,先进先出。那个不必然意味着你必须使用数组的一端或另一端。实际上,你甚至不需要数组。您也可以使用链表来表示队列。
答案 1 :(得分:1)
将变量名“front”更改为“end”和“end”更改为“front”不会更改您正在使用的数据结构或算法。它仍然是一个队列。
这就是你所做的一切。如果你选择将“前面”和“结束”的角色颠倒过来,这并不重要。当你在柜员排队时,你进入“结束”并等到你在“前面”。那是一个队列。
答案 2 :(得分:1)
我一直听到Queues在语义上被描述为添加到后部/尾部的入队项目以及从前部/头部移除的队列项目。
我上面描述的内容与您链接的维基百科文章一致。我不确定你在哪里学到了相反的语义。
计算机不关心您为变量命名的内容。但是,我建议你坚持我的开头句中描述的惯例,以符合常规做法。
我还建议您从代码中删除pop
调用(改为使用shift)以避免混淆。