题解 | #删除链表的节点#
删除链表的节点
http://www.nowcoder.com/practice/f9f78ca89ad643c99701a7142bd59f5d
直接删除法
遍历链表,用pre记录当前正在访问节点的前一个节点,找到目标节点,结合pre实现删除。
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
#
# @param head ListNode类
# @param val int整型
# @return ListNode类
#
class Solution:
def deleteNode(self , head: ListNode, val: int) -> ListNode:
# 引入头节点
result = pre = ListNode(0)
result.next = head
# 遍历链表
while head:
# 找到目标节点,删除该节点
if head.val == val:
pre.next = head.next
break
else:
head =head.next
pre = pre.next
return result.next