给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。
题解思路:
1、准备变量 pre、next 以及 cur
2、cur不为空就依次循环,首先保存下一个元素的节点,然后cur的next指针指向head,pre来到cur的位置
然后cur = next;最后返回pre
public ListNode reverseList(ListNode head) {
if(head == null || head.next == null){
return head;
}
ListNode pre = null;
ListNode next = null;
ListNode cur = head;
while(cur!=null){
next = cur.next;
cur.next = pre;
pre = cur;
cur = next;
}
return pre;
}