Java 反向链表给出错误答案
我有以下代码来反转链表 但我现在正在接受NPE head.next=prev; 我如何解决它Java 反向链表给出错误答案,java,Java,我有以下代码来反转链表 但我现在正在接受NPE head.next=prev; 我如何解决它 ListNode l = new ListNode(); l.insert(4); l.insert(10); l.insert(12); l.show(); l.reverse(); l.show(); public void reverse()
ListNode l = new ListNode();
l.insert(4);
l.insert(10);
l.insert(12);
l.show();
l.reverse();
l.show();
public void reverse() {
ListNode nextNode = null;
ListNode curr = head;
ListNode prev = null;
while (curr != null) {
nextNode = curr.next;
curr.next = prev;
prev = curr;
curr = nextNode;
}
head = curr;
head.next = prev;
}
你正在检查
curr
是否为空,而你应该检查curr。下一步
是否为空。我在手机上,但我第一次看到的是
head=curr代码>超出while循环,这意味着null也将添加到head和下一行中
head.next=prev代码>我们使用“点”执行了一个操作。我觉得那会导致失败
这是唯一的问题吗 水头=电流;如果curr为null,也会执行此操作。很可能是你的问题(至少一个)