楼主: jaly50
跳转到指定楼层
上一主题 下一主题
收起左侧

Berkeley CS 61B Data Structures(in Java) Homework3 加分+讨论帖

 
🔗
藏爱时光 2015-5-25 00:28:55 | 只看该作者
全局:
终于在看了大家的回复之下完成了作业。 有一个小问题, 在第三个method(twin)中, 是不是只需要排除head ==null 的情况呢。  只写了六行,虽然结果对,但是生怕漏掉什么情况。 希望各位大大不吝赐教。

Screenshot 2015-05-25 00.25.19.png (54.07 KB, 下载次数: 2)

Screenshot 2015-05-25 00.25.19.png

评分

参与人数 1学分 +1 收起 理由
jaly50 + 1

查看全部评分

回复

使用道具 举报

🔗
smallmikko 2015-6-1 09:12:08 | 只看该作者
全局:
BlackSanTa 发表于 2014-8-14 15:25
交作業:D

感覺我寫的 squish() and twin() 不是那麼的正確 squish我用了 ==不知道能不能貼上來 大家幫 ...

层主,你有没有试过把listLength!=0和!(testNode.next==null)对换位置?
int m=this.length();
    while(m!=0&&(x.next!=null))
这个是我的,我发现如果m!=0放在后面,squish执行到最后一个空链表的时候会报错,我表示无法理解,有人能解释一下吗
回复

使用道具 举报

全局:

评分

参与人数 1学分 +1 收起 理由
jaly50 + 1

查看全部评分

回复

使用道具 举报

全局:
链表真的很容易错。。。现在终于知道item和next了。。不容易。。就是node = node.next; 就是指向下一个node还不是很理解。。怎么这么神奇

Screen Shot 2015-06-03 at 12.04.28 AM.png (98.17 KB, 下载次数: 0)

Screen Shot 2015-06-03 at 12.04.28 AM.png

评分

参与人数 1学分 +1 收起 理由
jaly50 + 1

查看全部评分

回复

使用道具 举报

🔗
Wilson_2014 2015-6-16 15:58:38 | 只看该作者
全局:
本帖最后由 Wilson_2014 于 2015-6-16 16:00 编辑

虽然运行结果是对的,但是我的第一段代码里好像有bug啊,不知道该如何解决
  public static void smoosh(int[] ints) {
            // Fill in your solution here.  (Ours is fourteen lines long, not counting
            // blank lines or lines already present in this file.)  
          int currentItem = ints[0];
          int i = 1;
          while ((i <=ints.length-1) && (ints != -1)) {
                  while (ints[i] == currentItem) {
                          if (i == ints.length-1){
                                  ints[i] = -1;
                          }
                          else {
                                  for(int k=i; k<ints.length-1; k++){
                                          ints[k] = ints[k+1];
                                  }
                          ints[ints.length-1] = -1;
                          }            
                  }                        
                  currentItem = ints[i];
                  i++;
          }         
  }
[/i][/i][/i]

hw3.png (24.47 KB, 下载次数: 0)

hw3.png

评分

参与人数 1学分 +1 收起 理由
jaly50 + 1

查看全部评分

回复

使用道具 举报

🔗
BlackSanTa 2015-6-24 00:57:19 | 只看该作者
全局:
smallmikko 发表于 2015-6-1 09:12
层主,你有没有试过把listLength!=0和!(testNode.next==null)对换位置?
int m=this.length();
    whi ...

一年前寫的有點忘了這code在幹麻, 我看了listLength!=0和!(testNode.next==null) 這code做了猜測,應該是因為如果你 length是0了 那testNode 裝的東西就是null. testNode是null 就不能呼叫 next. 會有null pointer exception.

簡單來說就是java不能做這類似的事 null.method()  null.classMember
所以我們不能先check testNode.next 要先檢查length是不是 不等於0
回复

使用道具 举报

🔗
soulstephen 2015-6-24 10:29:53 | 只看该作者
全局:
再次加深理解,赞

回复

使用道具 举报

🔗
smallmikko 2015-6-24 13:44:40 | 只看该作者
全局:
BlackSanTa 发表于 2015-6-24 00:57
一年前寫的有點忘了這code在幹麻, 我看了listLength!=0和!(testNode.next==null) 這code做了猜測,應該是 ...

有道理!
回复

使用道具 举报

🔗
j_jessica 2015-6-25 23:51:59 | 只看该作者
全局:




补充内容 (2015-6-29 23:09):
求加学分~
回复

使用道具 举报

🔗
althinking 2015-7-1 15:21:21 | 只看该作者
全局:
本帖最后由 althinking 于 2015-7-1 15:24 编辑

Homework3smoosh() 8 lines
squish() 9 lines
twin() 6 lines
(blank lines not counted)




回复

使用道具 举报

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

本版积分规则

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