gpt4 book ai didi

java - linkedList.listIterator(linkedList.size()) 优化了吗?

转载 作者:行者123 更新时间:2023-11-30 08:15:17 24 4
gpt4 key购买 nike

我正在尝试为 LinkedList 创建一个反向 ListIterator,并且打算将其实现为 linkedList.listIterator(linkedList. size()) 交换了 nextprevious 操作,但随后意识到如果 LinkedList#listIterator(int) 被实现只是向前遍历到指定的位置,使用它从末尾开始将是非常不优化的,当列表支持直接到末尾时,必须遍历列表两次而不是一次。 linkedList.listIterator(linkedList.size()) 是否优化为不遍历整个列表?

最佳答案

ListIterator 使用索引来确定从哪个元素开始。 In the Oracle docs for LinkedList ,它说:

All of the operations perform as could be expected for a doubly-linked list. Operations that index into the list will traverse the list from the beginning or the end, whichever is closer to the specified index.

因此,当您执行 linkedList.listIterator(linkedList.size()) 时,它会向后遍历列表 0 步以获取正确的索引。因此,您可以说它已尽可能优化。继续并包装该迭代器。

关于java - linkedList.listIterator(linkedList.size()) 优化了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28921760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com