LeetCode编程练习 - Delete Node in a Linked List学习心得

52 篇文章 0 订阅
8 篇文章 0 订阅

题目:

    Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.

    Supposed the linked list is1 -> 2 -> 3 -> 4 and you are given the third node with value3, the linked list should become1 -> 2 -> 4after calling your function.

    编写一个函数来删除一个单独的链表中的节点(出来尾部),只允许访问该节点。


思路:

    直接判断与给定值是否相同,若相同将下一个指针赋值个当前。但运行错误。


    但解决方案中给出的建议,从链表中删除节点的通常方法是修改其前面的节点的下一个指针,然后指向它之后的指针,而我的思路并没有修改,而是直接判断是否相同。由于没有访问要删除的节点前的节点,因此不能以任何方式修改该节点的下一个指针。只要替换想要删除的节点的值,然后在它后面的节点上删除它,然后删除它之后的节点。也就是说,先将需要删除的节点的指针替换成下一个指针,然后在把它删除。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值