剑指Offer -- 024.反转链表

9/15/2022 反转链表

#

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

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

#

# 双指针

2.next -> 1.next -> null。
每个节点的next指向前一个节点。
一个指针用于遍历,另一个指针用于指向前一个节点。

let reverseLinkList = function (head) {
    // 当前节点
    let cur = head
    // 前一个节点 null
    let pre = null
    while(cur) {
        let tmp = cur.next
        cur.next = pre
        pre = cur
        cur = tmp
    }
    return pre
}
1
2
3
4
5
6
7
8
9
10
11
12
13

# Try

反转链表 (opens new window)

Last Updated: 9/15/2022, 4:44:33 PM