题目描述
输入一个链表,反转链表后,输出新链表的表头。
…以前写的时候head节点被我赋值了…同样方法写的时候发现这里会缺少一个值…看题解才发现循环结束后需要再次赋值
// 注意:循环结束后,还需要再赋一次值,因为在倒数第二个节点的next修改后,循环就终止了,还需将最后一个节点next修改。
public class Solution {
public ListNode ReverseList(ListNode head) {
if(head == null){
return null;
}
ListNode cur = head;
ListNode pre = null;
while(cur.next != null){
ListNode next = cur.next;
cur.next = pre;
pre = next;
next = cur;
}
// 注意:循环结束后,还需要再赋一次值,因为在倒数第二个节点的next修改后,循环就终止了,还需将最后一个节点next修改。
cur.next = pre;
return cur;
}
}