概念——队列有方向吗?

Concept - Does a queue have direction?

本文关键字:方向 队列 概念      更新时间:2023-09-26

我称之为队列,但根据维基百科,队列是先入先出的数据结构。

添加到"front"。然后从"end"中删除

我正在做相反的事。

我正在添加"结束"。从"前面"移走。(使用push()和shift())

因为前端和尾部没有任何具体的含义方向重要吗?

我只是从维基百科和mdn的例子。

我可以称它为队列吗?

我可以称它为队列吗?

绝对

。你引用的定义是正确的;队列采用先进先出的"FIFO"模式。并不一定意味着您必须使用数组的一端或另一端。事实上,你甚至不需要一个数组。您也可以使用链表来表示队列。

将变量名"front"更改为"end"answers"end"更改为"front"不会改变您正在使用的数据结构或算法。它还是一个队列。

这就是你所做的。如果你选择把"前端"answers"末端"的角色颠倒过来,这并不重要。当你在柜员处排队时,你从"末尾"进入,然后一直等到"前面"。这是一个队列

我总是听说队列在语义上被描述为加入队列的项目添加到后面/尾部,从前面/头部删除退出队列的项目。

我上面描述的与你链接到的维基百科文章是一致的。我不确定你在哪里学到了相反的语义。

计算机不会关心你给变量取什么名字。但是,我建议您坚持我开头那句话中描述的惯例,以与常规做法保持一致。

我还建议您从代码中删除pop调用(使用shift代替)以避免混淆。