跳转至

LC206 - 反转链表

ReverseLinkedList.go
package LinkedList

func reverseList(head *ListNode) *ListNode {
    if head == nil {
        return head
    }
    virtualHead := new(ListNode)
    virtualHead.Next = head
    prev, cur, next := virtualHead, head, head.Next
    for cur != nil {
        next = cur.Next
        cur.Next = prev
        prev = cur
        cur = next
    }
    head.Next = nil
    return prev
}