gpt4 book ai didi

Java - LinkedList 中的 "Rotating"对象 - LinkedList.addLast(LinkedList.removeFirst()) 是好编程还是坏编程?

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

在我的 Java 应用程序中,以下两个都将编译和运行,并产生所需的结果。

//"Rotate" the list items one place to the left.
myLinkedList.addLast(myLinkedList.removeFirst());

反方向的“旋转”

//"Rotate" the list items one place to the right.
myLinkedList.addFirst(myLinkedList.removeLast());

两种“轮换”都只需要一行代码,但我想知道这是否是正确的方法?这种方法有什么缺陷吗?

是否有更好、更健壮、更不易出错的方法来完成与我上面相同的操作,这需要多行代码才能实现,如果有,请解释原因。

最佳答案

我觉得还好。如果您有一个真正已满 的循环缓冲区,您可以只移动“开始/结束”索引,但我认为链表方法会工作得很好。特别是它仍然是 O(1)。

关于Java - LinkedList 中的 "Rotating"对象 - LinkedList.addLast(LinkedList.removeFirst()) 是好编程还是坏编程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3304129/

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