代码随想录训练营第三天 | 移除链表元素、翻转链表

54 阅读1分钟

移除链表元素

题目链接:移除链表元素

  • 定义虚拟头节点:统一所有节点操作
var removeElements = function(head, val) {
    const ret = new ListNode(0, head)
    let cur = ret
    while(cur.next) {
        if(cur.next.val === val) {
            cur.next = cur.next.next
            continue
        }
        cur = cur.next
    }

    return ret.next
};

翻转链表

题目链接:翻转链表

var reverseList = function(head) {
    let pre = null, cur = head, temp = null
    while(cur) {
        temp = cur.next
        cur.next = pre
        pre = cur
        cur = temp
    }
    return pre
};