给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。
示例 1:
输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]
* @param {ListNode} head
* @param {number} val
* @return {ListNode}
*/
var removeElements = function(head, val) {
//初始化一个空节点,初始赋值为0,并且list的下一个next指针指向head,指针指向为list
//创建虚拟头节点
const ret = new ListNode(0,head)
let cur = ret;
while(cur.next){
if(cur.next.val === val){
cur.next = cur.next.next;
// 终止while循环
continue;
}
cur = cur.next
}
//返回的头节点为ret ->next
return ret.next
};