你一个链表的头节点
head和一个整数val,请你删除链表中所有满足Node.val == val的节点,并返回 新的头节点 。
输入: head = [1,2,6,3,4,5,6], val = 6
输出: [1,2,3,4,5]
思路
- 移动指针到该节点的next指向节点的值等于val 就删除他的next节点 也就是指向他的next节点
- 注意需要利用虚拟头节点
var removeElements = function(head, val) {
let list = new ListNode(-1, head)
let p = list
while(p.next) {
if (p.next.val === val) {
p.next = p.next.next
continue
}
p = p.next
}
return list.next
};