24. 反转链表
思路:三指针
pre、cur、curNext
- 初始化:
- 第一个节点指向null
- cur.next指向pre
- 移动+cur.next指向pre
- 直到curNext是空+还需要一次cur.next指向pre,返回cur
- 或者直到cur是空,返回pre
操作:
思路:递归
- 返回条件:head==null||head.next==null
- 递归体:
cur的下一个节点的next指针指向cur
cur的next指针指向null
操作:
public ListNode reverseList(ListNode head) {
if (head==null||head.next==null) return head;
ListNode newhead = reverseList(head.next);
head.next.next = head;
head.next = null;
return newhead;
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。