移除链表元素
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点
js
var removeElements = function(head, val) {
// 虚拟头节点,next指向head
let dummyHead = new ListNode()
dummyHead.next = head
// 定义一个前置指针(dummyHead用于return的时候返回头节点)
let prev = dummyHead
while(head) {
// 如果val相等,prev指针指向当前直接节点的下一个节点
if(head.val === val) {
prev.next = head.next
}else {
// 否则的话往前走一个节点
prev = prev.next
}
// head每次循环都要往前走
head = head.next
}
return dummyHead.next
}