24.反转链表

题目

定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。

示例:

 输入: 1->2->3->4->5->NULL
 输出: 5->4->3->2->1->NULL

限制:

 0 <= 节点个数 <= 5000

注意:本题与主站 206 题相同:https://leetcode-cn.com/problems/reverse-linked-list/

解法

GitHub

func reverseList(_ head: ListNode?) -> ListNode? {
    var node: ListNode?
    var temp: ListNode? = head

    while let current = temp {
        let n = ListNode(current.val)
        n.next = node
        node = n
        temp = current.next
    }

    return node
}

Last updated