【问题标题】:Could two arrays be labeled as a single queue?两个数组可以标记为一个队列吗?
【发布时间】:2026-01-07 17:30:02
【问题描述】:

当数据被添加到后面并从前面删除时,两个数组是否会被称为队列,一个带有数据项,另一个带有 int(表示其优先级)?这两个数组在技术上是相互独立的,尽管它们确实具有相应的值。

【问题讨论】:

  • 这不是我喜欢的设计。这当然是可能的。

标签: java data-structures queue priority-queue


【解决方案1】:

这是软件,在软件中几乎一切皆有可能。

但是说真的:queue 只是一个抽象;它是一个具有某些属性的容器。如何实施这样的概念……取决于实施者。因此,当您找到一种方法来使用两个数组来实现人们期望从队列中获得的行为时;确定为什么不。

但是:那么这个实现属于一起。你不再有两个独立的数组了。如果您将这些数组作为队列的实现,那么它们就是这样;没有别的了!您只会在这种情况下使用它们(最好:作为队列类的私有成员);外面的任何人都不应该知道他们;或访问它们。

当然还有:数组具有固定大小; queue 你可能(或可能不会!)期望的东西。另一方面:如果需要“动态”队列;你仍然可以使用数组;当它们的容量达到时,你也只需要“增长”它们。

【讨论】:

    最近更新 更多