移除链表元素

2023-09-24 14:20:30 浏览数 (1)

题目

难度级别:简单

删除链表中等于给定值 val 的所有节点。

示例:

输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5

解题思路

通过初始化哨兵节点node并赋值为0,且next指向head,通过prev遍历node,当prev.next的val值与val值相等时,指针右移。最后输出node.next。

代码语言:javascript复制
const removeElements = function(head, val) {
    let node = new ListNode(0)
    let prev = node

    node.next = head

    while(prev.next) {
        if(prev.next.val === val)
            prev.next = prev.next.next
        else
            prev = prev.next
    }

    return node.next
};

题目来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/remove-linked-list-elements/

0 人点赞