力扣上看到的一个题,大概是写一个函数,这个函数的传参值,是一个单链表的某一个节点,需要在链表中删除这个节点。不影响其他节点。
首先按照常理,应该是找到前一个节点,并将前一个节点指向下一个指针的节点进行更改。
但是有问题,首先,这是一个单链表,传参值是要删除的节点,也就是说找不到它的前一个节点。
思路:
首先,把要删除的节点值改为下一个节点值,这样删除下一个节点,就可以解决这个问题

func deleteNode(node *ListNode) {
    node.Val=node.Next.Val//将此节点的值更改为下一个节点
    node.Next = node.Next.Next//将此节点指向下一个节点的指针进行更改,指向下一个节点的下一个节点
}

在这里插入图片描述
最后将最后一个元素删除。


版权声明:本文为Xiang_lhh原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Xiang_lhh/article/details/110129798