1、输入是val: ListNode 解法
class Solution:
def deleteNode(self, head: ListNode, val: ListNode) -> ListNode:
if not (head and val):
return False
if val.next != None:
tmp = val.next
val.value = tmp.value
val.next = tmp.next
elif head == val:
head = None
else:
node = head
while node.next!=val:
node = node.next
node.next = None
return head
2、输入是 val: int 解法
class Solution:
def deleteNode(self, head: ListNode, val: int) -> ListNode:
dummy = ListNode(0)
dummy.next = head
if head.val == val: return head.next
while head and head.next:
if head.next.val == val:
head.next = head.next.next
head = head.next
return dummy.next