收集队列

发布于 2024-09-15 06:47:37 字数 125 浏览 3 评论 0原文

如果我想自定义队列的实现,那么正确的是 说我可以选择我想要的任何顺序(不是 FIFO),但我必须始终 尊重要删除的元素定位为“head”的事实吗?

但是对于插入操作,我没有义务将元素放在尾部(例如放入 FIFO 中)?

If I wanted to make a custom implementation of a Queue is correct to
say that I can choose whatever order I want (not FIFO) but I must always
respect the fact that the element to remove is that positioned as "head"?

but for insertion operation I'm not obliged to put the element to the tail (like into FIFO)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

迷爱 2024-09-22 06:47:37

你是对的。 javadoc 明确指出了这一点:

队列通常(但不一定)以 FIFO(先进先出)方式对元素进行排序。其中例外的是优先级队列,它根据提供的比较器或元素的自然顺序对元素进行排序,以及 LIFO 队列(或堆栈),它对元素进行 LIFO(后进先出)排序。无论使用什么顺序,队列的头部都是通过调用remove()或poll()来删除的元素。在 FIFO 队列中,所有新元素都插入到队列尾部。其他类型的队列可能使用不同的放置规则。每个队列实现都必须指定其排序属性。

You are correct. The javadoc clearly states this:

Queues typically, but do not necessarily, order elements in a FIFO (first-in-first-out) manner. Among the exceptions are priority queues, which order elements according to a supplied comparator, or the elements' natural ordering, and LIFO queues (or stacks) which order the elements LIFO (last-in-first-out). Whatever the ordering used, the head of the queue is that element which would be removed by a call to remove() or poll(). In a FIFO queue, all new elements are inserted at the tail of the queue. Other kinds of queues may use different placement rules. Every Queue implementation must specify its ordering properties.

笑叹一世浮沉 2024-09-22 06:47:37

你是对的。

队列文档 甚至明确指出了这一点(强调我的):

队列通常(但不一定)以 FIFO(先进先出)方式对元素进行排序。 [...] 无论使用什么顺序,队列的头部都是通过调用 remove()poll() 来删除的元素。

You are correct.

The Queue documentation even states this explicitly (emphasis mine):

Queues typically, but do not necessarily, order elements in a FIFO (first-in-first-out) manner. [...] Whatever the ordering used, the head of the queue is that element which would be removed by a call to remove() or poll().

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文