力扣链接:
https://leetcode-cn.com/probl...
解题思路:
- 链表题目在做的时候,应用一个虚构头节点是罕用的做法,尤其是须要返回新的头节点时
- 这道题的不同点在于,只是返回翻转的节点,所以头节点肯定是之前的最初一个节点,然而翻转之前的节点须要指向空,所以新建一个空的新节点
- 本题的解法为双指针法:建设两个节点:pre和cur
type ListNode Struct { val int next *ListNode}func reverseList(head *ListNode) *ListNode { pre := &ListNode{} cur := head for cur != nil { next := cur.Next cur.Next = pre pre = cur cur = next } return pre}