gpt4 book ai didi

Java - 将对象移动到LinkedList的前面

转载 作者:搜寻专家 更新时间:2023-10-31 19:33:21 25 4
gpt4 key购买 nike

我正在遍历 LinkedList 中的对象列表,搜索第一个满足某些条件的对象。找到后,我想将其移到列表的前面,以减少在列表中搜索常用搜索对象所花费的平均时间。

我正在尝试做的伪代码示例:

for(Object thing:list){
if(ThisIsTheObjectWeAreLookingFor(thing)){
list.RemoveCurrentLinkedListNode();
list.addFirst(thing);
return thing;
}
}

我知道我可以使用 remove(Object) 或 remove(index) 方法,但那样会更慢。基本上是这样,这取决于列表中元素的数量。 (因为这些方法必须再次遍历列表。)

最佳答案

Iterator it = list.iterator();
while (it.hasNext()) {
Object thing = it.next();
if (ThisIsTheObjectWeAreLookingFor(thing)) {
it.remove();
list.addFirst(thing);
return thing;
}
}

关于Java - 将对象移动到LinkedList的前面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22748930/

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