LeetCode 206 Reverse Linked List 反转链表

// 递归处理, 利用函数作用域操作当前节点和当前节点的下一个节点
const reverseList = head => {
    if (head == null || head.next == null) return head
    const end = reverseList(head.next)
    head.next.next = head
    head.next = null
    return end  // 返回最后一个节点,也就是反转后的头节点
};

const reverseList = head => {
    let prev = null
    let cur = head
    while (cur) {
        const next = cur.next
        cur.next = prev
        prev = cur
        cur = next
    }
    return prev  
}
posted @ 2022-07-19 14:36  IslandZzzz  阅读(11)  评论(0编辑  收藏  举报