题目链接:https://leetcode.com/problems/delete-node-in-a-linked-list/
思路分析:题目要求在链表中删除给定的node,该node不为链表中的tail。因为没有node的前一个结点,所以想要直接从linked list中直接删除结点node是不可能的。
根据题目信息,可以通过将node.next结点的值赋给node,并删除node.next结点,则效果与直接删除node结点相同。
代码如下:
# Definition for singly-linked list. # class ListNode(object): # def __init__(self, x): # self.val = x # self.next = None class Solution(object): def deleteNode(self, node): """ :type node: ListNode :rtype: void Do not return anything, modify node in-place instead. """ node.val = node.next.val node.next = node.next.next
来源:https://www.cnblogs.com/tallisHe/p/5313367.html