算法打卡 | 第2天 | 力扣206:反转链表

38 阅读1分钟

题目:力扣206:反转链表

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

 

示例 1:

输入: head = [1,2,3,4,5]
输出: [5,4,3,2,1]

题解


func reverseList(head *ListNode) *ListNode {
    if head == nil || head.Next == nil{
        return head
    }
    var cur = reverseList(head.Next)
    head.Next.Next = head
    head.Next = nil

    return cur
}


反思:

用了递归,当前节点的下一个节点额下一个节点,也就是反过来,比如 1-》2,1的下一个节点是2,2的下一个节点是1,反过来了