剑指 Offer 18. 删除链表的节点

129 阅读1分钟

剑指 Offer 18. 删除链表的节点

js模拟一个链表结构 如下 在leecode上用[1,2 ...] 用数组的形式去表示链表结构,其实不是数组哦

/**
    var head = {
        val:1,
        next:{
            val:2,
            next:...
        }
    }
 */
var deleteNode = function(head, val) {
    //如果在链表头部删除其头部那么直接head.next
    if (head.val === val) return head.next;
    let pre = head;
    let cur = head.next;
    while (cur !== null && cur.val !== val) {
        pre = cur;
        cur = cur.next;
    }
    if (cur.val === val) pre.next = cur.next;
    return head;
};

image.png