📣 VIP通行证夏日特惠 限时立减$68
查看: 1555| 回复: 6
跳转到指定楼层
上一主题 下一主题
收起左侧

[Leetcode] Remove Duplicates from Sorted List II为什么要用dummynode?

🔗
MTC | 只看该作者 |倒序浏览
全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
本帖最后由 MTC 于 2014-11-17 21:27 编辑

http://www.ninechapter.com/solutions/remove-duplicates-from-sorted-list-ii/#java
  1. public class Solution {
  2.     public ListNode deleteDuplicates(ListNode head) {
  3.         if(head == null || head.next == null)
  4.             return head;
  5.         
  6.         ListNode dummy = new ListNode(0);
  7.         dummy.next = head;
  8.         head = dummy;

  9.         while (head.next != null && head.next.next != null) {
  10.             if (head.next.val == head.next.next.val) {
  11.                 int val = head.next.val;
  12.                 while (head.next != null && head.next.val == val) {
  13.                     head.next = head.next.next;
  14.                 }            
  15.             } else {
  16.                 head = head.next;
  17.             }
  18.         }
  19.         
  20.         return dummy.next;
  21.     }
  22. }
复制代码

上一篇:若问一句,到底怎样提高代码量
下一篇:求点拨design pattern面试中常考的点
🔗
Freetymekiyan 2014-11-17 23:21:41 | 只看该作者
全局:
dummy是为了记住Linkedlist的head位置,head不是被移到后面去了吗
回复

使用道具 举报

🔗
dumpsterfire 2014-11-18 05:35:32 | 只看该作者
全局:
不加dummy的话 代码写起来会比较麻烦 lz可以试试
回复

使用道具 举报

🔗
mhbkb 2014-11-18 05:46:06 | 只看该作者
全局:
因为第一个node有可能会被删除掉  这样就没有head返回了,需要记录下一个有效head.   取一个dummy这个虚头是一直有效存在的,返回时直接返回dummy.next就行
回复

使用道具 举报

🔗
jdcs2015 2014-11-21 06:21:34 | 只看该作者
全局:
需要用dummy 来 记住 head的位置,head后来一直在变, 当然 你把head留住,新建一个runner指针,跑runner也可以。总之要有个头指针固定住。
回复

使用道具 举报

🔗
yabay91 2014-11-21 06:27:46 | 只看该作者
全局:
当对链表的一系列操作时,如果表头有可能发生变化,这时候我们用一个dummy来指向表头。这样在最终返回结果的时候,不需要再重新寻找表头,只需要返回dummy.next就行了。这样做有很多好处,避免很多对表头的单独操作
回复

使用道具 举报

🔗
宝贝忆彼岸 2014-11-21 22:59:16 | 只看该作者
全局:
加上dummy会简单一些,因为II中head不一定就是第一个node了,不确定,会变
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表