JZX轻语:简
LeetCode 3217 - 从链表中移除在数组中存在的节点
发表于2024年08月07日
模板题,直接使用两个变量prev
和curr
,分别表示当前节点和前一个节点,然后遍历链表,如果当前节点的值在数组中,则删除当前节点: prev.next = curr.next
。注意删除节点后,prev
不需要移动。
class Solution:
def modifiedList(self, nums: List[int], head: Optional[ListNode]) -> Optional[ListNode]:
nums = set(nums)
dummy = ListNode(0, head)
prev = dummy
curr = head
while curr is not None:
if curr.val in nums:
prev.next = curr.next
else:
prev = curr
curr = curr.next
return dummy.next