查看: 20643| 回复: 98
跳转到指定楼层
上一主题 下一主题
收起左侧

uc berkeley CS 61B homework 9

 
全局:
公开课
学校名称: uc berkeley
Unit号: 1
开课时间: 2014-09-01
课程全名: CS 61B Data Structures(in Java)
平台: 其他

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

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

x
这个作业还是比较简单的,但是非常难以理解+_+ 可能我英语不太好的缘故,读了好多遍才知道要干啥。。。。

其实这个作业就是让大家消去一部分walls,是得每两个cell之间有且仅有一条path。


距离修完cs61b仅有一步之遥了!!
https://www.1point3acres.com/bbs/forum.php?mod=attachment&aid=MjYyODQwfDE0N2UzNjRmZjdmYzlmMzQ2OGRjYWQ4MzM2ZGY3MDNifDE3ODQ2MTQ5NzI%3D&request=yes&_f=.png

1.png (16.38 KB, 下载次数: 3)

1.png

评分

参与人数 1学分 +1 收起 理由
jaly50 + 1 好棒,再接再厉!

查看全部评分


上一篇:[Coursera] Algorithmic Thinking (Module 4)
下一篇:[Coursera]计算机组成北大 Week1-3
推荐
lyc1994 2015-8-11 10:53:55 | 只看该作者
全局:
这次的作业十分有趣!
我感觉重点是随机选取Maze中的wall所使用到的方法:
将Maze中所有水平和垂直方向的wall编号,放入一个数组中,首先设定数值w等于数组长度。随机取数randInt(w),取数组中随机数序号上wall的编号,对这只wall
进行处理(决定是打开wall还是保持原状)。最后将用到的wall编号与数组最后一位(w - 1)进行互换,w--,循环。这样再也不会重复处理已经处理过的wall了。

result.JPG (79.46 KB, 下载次数: 4)

result.JPG
回复

使用道具 举报

推荐
wynnforce 2015-6-11 14:50:57 | 只看该作者
全局:
本帖最后由 enirinth 于 2015-6-11 14:55 编辑

先贴作业:



以上是作业的partI

partII要口头设计一个DFS生成迷宫的算法,有两个要求:
1. 最后生成的是树, 没有circle; 且要能遍历
2. 每一次的生成要足够random

以下是partII
1. Mark all walls true (unbroken)
2. Randomly choose a starting cell
3. Marked this cell visited
4. Loop (every direction that has an unbroken (true) wall && through which you find an unvisited cell)
-----4.1 Randomly choose one direction
-----4.2 Go through that wall to another cell, mark the wall brokedn (false)
-----4.2 Recursive DFS call on that cell

i. 显然通过marked visited可以保证生成的是树,没有circle; 这是DFS本身的特性;
ii. 每个wall不管是true or false, 都代表一条edge, 所以这是个connected的图, 则DFS一定能遍历, 这也是DFS本身的特性;
iii. 因为起点是randomly chosen, 每一步的方向也是randomly chosen, 所以应该就保证random的树生成了

i和ii保证了要求1
iii I assume保证了要求2吧......
_______________________________________________________________________________________________
到了hw9, 终于有一种自己的code style美如画的错觉了......
终于第一次不怎么debug就跑出来结果了.....
可能因为前面tree的部分各种分情况讨论, 弄得code也丑, 又容易出错吧....


评分

参与人数 4大米 +20 学分 +1 收起 理由
pirateshadow + 5 回答的很好!
阿童木 + 5 感谢分享!
AveMaleficum + 10
zzwcsong + 1

查看全部评分

回复

使用道具 举报

推荐
sicilianee 2015-5-29 14:46:33 | 只看该作者
全局:
题目是按照column存的而不是按照row来存的。注意。
index的转换要注意。wall的一维index--wall的二维index--cell的二维index--cell的一维index。由wall到cell多对一。

hw9.png (110.2 KB, 下载次数: 3)

hw9.png
回复

使用道具 举报

🔗
voiding 2014-10-14 05:54:17 | 只看该作者
全局:
太厉害了,坚持下来真不容易啊,我还在tree这一部分纠结。
回复

使用道具 举报

🔗
 楼主| 逃亡~ 2014-10-15 14:52:39 | 只看该作者
全局:
voiding 发表于 2014-10-14 05:54
太厉害了,坚持下来真不容易啊,我还在tree这一部分纠结。

一起加油!
回复

使用道具 举报

🔗
wtttt0 2014-11-18 11:46:14 | 只看该作者
全局:
回复

使用道具 举报

🔗
imposiwind 2014-11-26 21:30:19 | 只看该作者
全局:
作业入口:http://www.cs.berkeley.edu/~jrs/61b/hw/hw9/要求掌握 Disjoint Sets  不相交集的知识。

绘制迷宫图,使任意两个像素点(cell)之间仅有一条通路。示意图如下。

按照提示完成即可,不是很难,注意union函数的参数要保证是root!

最后冲刺,cs61b, 加油!!!!!!
更多图片 小图 大图
组图打开中,请稍候......
回复

使用道具 举报

🔗
831128 2014-12-1 02:36:17 | 只看该作者
全局:
交作业,拿学分, 坚持住,争取今天把hw10也做了

QQ截图20141130102800.png (9.74 KB, 下载次数: 2)

QQ截图20141130102800.png
回复

使用道具 举报

🔗
dreamingrobot 2014-12-9 21:58:23 | 只看该作者
本楼:
全局:
交作业

HW9.png (94.39 KB, 下载次数: 9)

hw9

hw9
回复

使用道具 举报

🔗
微斯渝 2014-12-20 07:56:00 | 只看该作者
本楼:
全局:
hw9 done.

Screen Shot 2014-12-19 at 6.54.25 PM.png (62.26 KB, 下载次数: 6)

Screen Shot 2014-12-19 at 6.54.25 PM.png
回复

使用道具 举报

🔗
jzc007 2015-1-2 05:18:21 | 只看该作者
本楼:
全局:
交作业咯
回复

使用道具 举报

🔗
bruce2045 2015-1-9 06:35:45 | 只看该作者
全局:
这次作业不难,别把vertical和horizontal的cell搞反了就行!还差一次作业就搞定cs61b了,想想就有点小激动啊!

hw9.png (100.52 KB, 下载次数: 12)

hw9.png
回复

使用道具 举报

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

本版积分规则

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