157 字
1 分钟
LeetCode-206.反转链表
链表
给你单链表的头节点
head,请你反转链表,并返回反转后的链表。
示例 1:
输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2:
输入:head = [1,2]输出:[2,1]示例 3:
输入:head = []输出:[]
双指针的解法
/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */func reverseList(head *ListNode) *ListNode { var pre *ListNode cur := head for cur != nil { next := cur.Next cur.Next = pre pre = cur cur = next }
return pre}递归的方法
func reverseList(head *ListNode) *ListNode { return help(nil, head)}
func help(pre, head *ListNode)*ListNode{ if head == nil { return pre } next := head.Next head.Next = pre return help(head, next)} LeetCode-206.反转链表
https://sheep44044.github.io/posts/算法/链表/leetcode-206反转链表/

