题解 | #反转链表#
反转链表
https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
利用头插法,可以实现链表的反转
当链表不为空,并且链表不是只有head一个节点时
1、定义cur
2、将head置为空
3、将cur用头插法的方式,插到head前面
4、重新定义head,cur、curNext
public ListNode ReverseList (ListNode head) {
// write code here
//链表为空时
if (head == null) {
return null;
}
//链表只有一个节点时
if (head.next == null) {
return head;
}
//核心思想头插法
ListNode cur = head.next;
head.next = null;
while (cur != null) {
ListNode curNext = cur.next;
cur.next = head;
head = cur;
cur = curNext;
}
return head;
}
#反转链表go#