【发布时间】:2022-01-15 15:33:15
【问题描述】:
我无法弄清楚我在代码中遗漏了什么。为什么它只排序一次,最后放 50 个元素,其余元素和以前一样。这是我的代码。
//TO SORT THE LINKED LIST
static Node sorted(Node head){
Node temp1 = head;
Node temp2 = head;
while(temp1 != null){
while(temp2 != null){
if(temp2.data > temp2.next.data){
int temp = temp2.data;
temp2.data = temp2.next.data;
temp2.next.data = temp;
}
temp2 = temp2.next;
}
temp1 = temp1.next;
}
return head;
}
【问题讨论】:
-
这是什么语言?
-
除了
temp1和temp2,您应该使用更多描述性的变量名。 -
您好,抱歉,它是 Java。所以我尝试使用两个循环按升序对我的链表 50,40,30,20,10 进行排序。
-
您使用过您的逐步调试器吗?如果没有,为什么不?
-
(不 - 我不会为您提供修复...所以不要打扰。相反,您需要自己了解问题并自己解决问题。这样您学习 ...这是你做作业的重点。是的,学习如何使用调试器也是一件好事。)
标签: java sorting linked-list