dummyHead.next不是head吗,请老师解答一下

dummyHead.next不是head吗,请老师解答一下

为什么返回的是dummyHead.next啊,dummyHead.next不是head吗,虽然结果是对的,不太明白,请老师解答一下

http://img1.sycdn.imooc.com//climg/6016bdfa0975062318200541.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
liuyubobobo 2021-02-01 01:12:49

因为结果要求返回原链表的头结点,就是 dummyhead.next 呀。


或者你认为应该返回什么是正确的?


继续加油!:)

  • 老师,为什么不能直接返回head呢?

    我试了一下,如果返回head的话,分两种情况:

    假如头节点是要被删除的元素,那么最后输入结果中,头节点并没有被删除,而后面的元素可以被正常删除;

    假如头节点不是要删除的元素,那么后面的元素可以正常删除,最后的输出结果是正确

    http://img1.sycdn.imooc.com//climg/607de89009f1848a11061226.jpg

    http://img1.sycdn.imooc.com//climg/607de890091ff59311181240.jpg

    ​的。

    2021-04-20 04:31:26
  • 是的呀。关键就是如果要删除的是头结点的时候,返回 head 就错了呀。但是返回 dummyHead->next 是正确的呀。因为 dummyHead->next 一直指向这个链表的第一个节点呀。

    2021-04-20 06:17:04
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
算法与数据结构
  • 参与学习       2583    人
  • 解答问题       1082    个

慕课网算法名师Liuyubobobo,5年集大成之作 从0到工作5年,算法与数据结构系统解决方案

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师