"无头单链表中删除节点"有感——变通 2014-03-18 17:56
2014-05-17 21:38
288 查看
最近在找暑假实习,为了面试,复习一下算法和数据结构。随意翻到《编程之美》里的"无头单链表中删除节点":假设有一个没有头指针的单链表,一个指针指向此链表中间的一个节点(不是第一个,也不是最后一个),问如何将该节点从单链表中删除。
想法:要删除节点,得知道这个节点的前驱节点p,另p的next指向此节点的后继节点即可,但不知道头指针,而且还是单链表,那没法获得其前驱节点,也就没法删除该节点了啊?
解法:确实没法“删除”该节点,但有没有别的“变通”的方法?! 有! 将C节点的data赋值给B节点的data,再删除C节点,这样做的结果就等效“删除”了节点B。
感触:以后遇到不能解决的事情,不妨试想下有没有其他“变通”的方法能达到预期的效果
转自我的搜狐博客:http://jluhlh.blog.sohu.com/301694207.html
想法:要删除节点,得知道这个节点的前驱节点p,另p的next指向此节点的后继节点即可,但不知道头指针,而且还是单链表,那没法获得其前驱节点,也就没法删除该节点了啊?
解法:确实没法“删除”该节点,但有没有别的“变通”的方法?! 有! 将C节点的data赋值给B节点的data,再删除C节点,这样做的结果就等效“删除”了节点B。
感触:以后遇到不能解决的事情,不妨试想下有没有其他“变通”的方法能达到预期的效果
转自我的搜狐博客:http://jluhlh.blog.sohu.com/301694207.html
相关文章推荐
- <笔试><面试>单链表相关(1)从尾到头打印链表、删除一个无头链表的非尾结点
- 从无头单链表中删除节点
- "无法删除文件夹,目录不是空的"或U盘文件无法删除的解决办法
- 从无头单链表中删除节点
- 从无头单链表中删除节点
- 链表中找寻第i的节点的办法&删除整个链表
- 删除名为"-a"的文件
- 从无头单链表中删除节点
- "无法删除文件夹,目录不是空的"解决办法
- 从无头单链表中删除节点--扩展:反转单链表
- Flex使用<mx:Tree>控件创建树(可添加和删除节点)
- "BOF或EOF中有一个是真,或者当前的记录已被删除,所需的操作要求一个当前的记录"问题解决
- 从无头单链表中删除节点
- sql server 删除数据库出现"因为它正用于复制"的错误解决办法
- sql server 2008 删除数据库出现"因为它正用于复制"的错误解决办法
- 得到TREEVIEW 中某个节点的路径,以"_"隔开
- 读书笔记之编程之美 - 3.4 从无头链表中删除节点
- 链表问题之无头单链表删节点<Java实现>
- 从无头单链表中删除节点
- 3.4 从无头单链表中删除节点