一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 8315|回复: 331
收起左侧

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

  [复制链接] |试试Instant~ |关注本帖
jaly50 发表于 2014-5-14 00:58:21 | 显示全部楼层 |阅读模式

[其他]CS 61B Data Structures(in Java) #1 - 2014-05-14@Berkeley

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

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
本帖最后由 jaly50 于 2014-5-14 08:51 编辑

作业入口:http://www.cs.berkeley.edu/~jrs/61b/hw/hw3/


看完Lecture 8: Linked lists II 可以完成此作业。

第七和第八课开始使用数据结构教材: Data Structures and Algorithms in Java, 5th Edition. 【英文版】<-请点击下载。


作业要求:  1.写smoosh() method
  2.squish() method
  3. twin() method


  每次作业完成奖励1学分(=50大米
This is an individual assignment; you may not share code with other
students.


课程不鼓励大家分享代码,所以我们加分的规则是晒运行成功且输出正确的图。如下:

hw3.png



相关链接:      

       【公开课讨论+加分总贴】:UC Berkeley CS 61B Data Structures(in Java)
       【课程网站】:http://www.cs.berkeley.edu/~jrs/61b/
       【视频网站】:【Youtube】【Youku

        【教材】:Head First Java 【中文版】【英文版
                      Data Structures and Algorithms in Java, 5th Edition. 【英文版

号外:程序中给出的测试数据有限,欢迎大家踊跃上传自己的测试数据!!!

评分

1

查看全部评分

zj45499 发表于 2015-1-4 14:48:50 | 显示全部楼层
本帖最后由 zj45499 于 2015-1-4 14:50 编辑
Howie 发表于 2014-12-27 14:54
大家都是怎么做第一个的啊。我感觉我做的好复杂啊!!!
对于每个元素,看后面那个是否和他相等,相等的 ...

Use currentIndex to store the first index of consecutive items.
Use i to iterate through the array.

if i.item != currentIndex.item
    then set the item of currentIndex.next to i.item
    and currentIndex++

After one iteration, the currentIndex will become the last meanful item in the new array.
then just set every item after currentIndex to -1.(in LinkedList version, just need to set currentIndex.next to null)


The code look like this:
  1.            int currentIndex = 0;
  2.            for (int i = 1; i < ints.length; i++) {
  3.                if (ints[currentIndex] != ints[i]) {
  4.                    ints[currentIndex + 1] = ints[i];
  5.                    currentIndex++;
  6.                }
  7.            }
  8.            for (int i = currentIndex + 1; i < ints.length; i++) {
  9.                ints[i] = -1;
  10.            }
复制代码

评分

1

查看全部评分

回复 支持 5 反对 0

使用道具 举报

a6219221 发表于 2015-10-12 21:38:40 | 显示全部楼层
rainbow0206 发表于 2015-10-11 10:17
hw3 用了好一会啊~ 求队友。另问:
SListNode newNode = new SListNode(current.item, current.next);
S ...

第一个新加了一块内存空间作为新的node 第二个只是新加了一个指针newNode然后让它指向和current同一块内存空间

评分

1

查看全部评分

回复 支持 2 反对 0

使用道具 举报

gh603 发表于 2015-7-8 04:14:32 | 显示全部楼层
MosesZhou 发表于 2015-7-2 12:37
这次作业代码行数很短不过因为概念不清,做第二个的时候弄了挺久的 = = 不过现在差不多是把Singly Linked L ...

第一题可以用非重复数字从头替换原array的数字。比如说第一个非重复数字替换原array的第一个数字,第二个非重复数字替换原array的第二个数字。同时update非重复数字的size。最后,非重复数字的size表示array的前几个数字为非重复数字,然后把后面的数字替换成-1.

评分

1

查看全部评分

回复 支持 2 反对 0

使用道具 举报

MosesZhou 发表于 2015-7-2 12:37:07 | 显示全部楼层
这次作业代码行数很短不过因为概念不清,做第二个的时候弄了挺久的 = = 不过现在差不多是把Singly Linked List概念弄清楚了吧~
刚开始写的时候忘记update size了,提醒一下大家虽然测试用例中没有检查size,但是每次添加完或者删除完节点还是要记得update一下~
part 1.  13 lines总的来说写的很顺,画了遍流程图,改了点小错误就通过了。注意以下两点:
1. 如果不生成新的array直接修改原array的话代码可以更加简化,我一下没想出来这样怎么实现。我的实现方法是把在原array把重复的元素设置为一个特定的值(比如123456),再把不为123456的元素放到一个新的array里,再用-1填充新array至与原array.length相等,最后把新array中的元素一个个复制回原array中;

2. 最开始是想把重复的元素置为null,但是因为已经declare这个array为int, 这样一来会有type error,所以我只好用一个很大的定值,比如123456来代替null。应该可以默认输入的array里元素有123456的可能性趋近于0吧。

part 2. 11 lines 踩线 = =
这个题想了很久,最开始的思路是就设置一个currentNode,然后判断currentNode.item.equals(currentNode.next.item), if true, then do currentNode.next = currentNode.next.next,后来发现不行,因为可能出现currentNode.next = null 使 currentNode.next.next出错,想了挺久才发现可以设置两个node, currentNode和nextNode。解决这个问题之后又因为随便替换current.next和nextNode查了好久的错,心累 = =


part 3. 7 lines

这题写的很顺,思路很直接,应该是可以秒做出来,注意题目提示: Do not try to make new copies of the items themselves. Just copy the references to the items.


总的来说,伯克利作业出的真的很有水平,收获很大!
hw3_result.JPG

评分

1

查看全部评分

回复 支持 1 反对 0

使用道具 举报

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 反对 0

使用道具 举报

zhangchi1199068 发表于 2014-5-14 01:32:57 | 显示全部楼层
哇,优酷也有吗?优酷的视频是齐全的吗
回复 支持 反对

使用道具 举报

 楼主| jaly50 发表于 2014-5-14 08:50:19 | 显示全部楼层
zhangchi1199068 发表于 2014-5-14 01:32
哇,优酷也有吗?优酷的视频是齐全的吗

点进去试试

我只是搜到 我并没有在那儿看
回复 支持 反对

使用道具 举报

zhangchi1199068 发表于 2014-5-14 08:52:09 | 显示全部楼层
jaly50 发表于 2014-5-14 08:50
点进去试试

我只是搜到 我并没有在那儿看

我还没开始看,我点进去看见只有19课,不知道YouTube 上面有多少课呢?
回复 支持 反对

使用道具 举报

chouclee 发表于 2014-5-17 21:44:53 | 显示全部楼层
hw2我修改过了。。。
hw3里自己确认了一下size变量- -#
Screenshot from 2014-05-17 21^@^!.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

melissami 发表于 2014-5-18 21:43:32 | 显示全部楼层
这次作业有点难,做了挺久的〒_〒
homework3.PNG


不知道有没有人开始做project1呀,是不是看完linked list就可以开始做了呀?
试试at  @[size=11.818181991577148px]oh_baizhima @[size=11.818181991577148px]chouclee @[size=11.818181991577148px]jaly50

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| jaly50 发表于 2014-5-19 01:31:33 | 显示全部楼层
melissami 发表于 2014-5-18 21:43
这次作业有点难,做了挺久的〒_〒

是的 可以做project1了
我正在奋战project1

文件找不到 好烦人!!!
回复 支持 反对

使用道具 举报

sugarsjw 发表于 2014-6-2 02:04:02 | 显示全部楼层
本帖最后由 sugarsjw 于 2014-6-2 02:08 编辑

C:\Users\Junwei\Desktop\Capture
Capture.JPG

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

gloria_wwj 发表于 2014-6-14 09:36:39 | 显示全部楼层
讨厌的字数限制以及每天上传附件数量限制
Homework3.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

windforce 发表于 2014-6-14 09:49:23 | 显示全部楼层
不清楚理解对了没有,为了满足main()函数的输出形式,我还在SList里自己override了一个toString()

Homework3

Homework3

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

galaxy2 发表于 2014-6-17 03:11:11 | 显示全部楼层
hw3
                                    
hw3.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

Supersonics35 发表于 2014-6-19 19:47:31 | 显示全部楼层
Homework 03

                               
登录/注册后可看大图

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

漫漫琳游的鱼 发表于 2014-6-28 13:16:32 | 显示全部楼层
终于 QQ截图20140628131435.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

ginrain 发表于 2014-7-5 23:00:43 | 显示全部楼层
交作业了~~~~ HW3
QQ20140705-1.png

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-4 20:52

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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