# Definition for singly-linked list.
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:
def deleteNode(self, node):
"""
:type node: ListNode
:rtype: void Do not return anything, modify node in-place instead.
"""
targetValue = node.val;
targetNode = node
while node:
if node.next is not None:
node.val, node.next.val = node.next.val, node.val
node = node.next
node = targetNode
while node:
# print("node.val", node.val)
if node.next and node.next.val == targetValue:
node.next = None
node = node.next