题目链接
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。
示例1:
输入:head = [1,2,6,3,4,5,6], val = 6输出:[1,2,3,4,5]
示例2:
输入:head = [], val = 1输出:[]
示例3:
输入:head = [7,7,7,7], val = 7输出:[]
提示:
- 列表中的节点数目在范围 [0, 104] 内
- 1 <= Node.val <= 50
- 0 <= val <= 50
注意:head结点有可能需要删除,因此另加一个结点rc
/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val = val; }* ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/class Solution {public ListNode removeElements(ListNode head, int val) {ListNode rc = new ListNode(0);rc.next = head;ListNode current = rc;while (current.next != null){if(current.next.val == val){current.next = current.next.next;} else {current = current.next;}}return rc.next;}}
