小编Yum*_*rio的帖子

在Java中插入LinkedList的中间

想象一下你有一个LinkedList插入元素{A,B,C,D,E,F},这些操作都是O(1)现在我想回到开头添加{G,H,I}所以最终的LinkedList会看起来像:{G,H,I,A,B,C,D,E,F}.

我可以使用list.add(index, content),但这是非常低效的,因为每个操作将是O(N).后来我想继续加尾.我确信有一种方法可以在O(1)时间内完成所有这些操作,而不需要创建我自己的链表,我只是不知道如何.

编辑:所以我真的想知道Java是否有一些排序迭代器/指针,i,其中a可以从那里插入O(1),例如i = 3 {A,B,C,^ D,E,F },插入{G},{H},{I}会使列表看起来像{A,B,C,G,H,I,D,E,F}. list.addAll有效,但我必须先创建一个列表.如果存在这样的方法,我不想在不知情的情况下继续进行.

最后我问这个问题来解决这个Uva判断问题,我知道如何解决它,但如果不能推广其他场景我什么都不学.

java linked-list time-complexity

2
推荐指数
1
解决办法
1396
查看次数

标签 统计

java ×1

linked-list ×1

time-complexity ×1