UC Berkeley CS 61B Data Structures(in Java)
jaly50
伯克利的JAVA+数据结构课,一门课学两个东西!性价比超高噢!小伙伴们快来吧!
本贴是Berkeley CS 61B 的课程汇总贴,以后大家关于这个课的讨论可以在本贴进行,同时到各个作业贴中提交Homework和project可以有学分奖励!
希望大家一起来跟这个课!!
课程相关链接:
“我到底要不要学这个课呢?”
参考链接:[CS 61B讨论贴][CS 61B介绍+推荐贴]
***********************我是可爱的分界线******************************************
上图是课程的截屏,总共42节课,每节50min左右。一节课要做的是看lecture video(链接至youtube),然后读reading任务(Head first Java的页码),在Due之前完成相应作业,分为lab,project,和homework三种。
大家对于lab的作业有什么不明白或需要讨论的地方,仍然欢迎开lab讨论贴!
^.^^.^^.^^.^^.^^.^^.^^.^我是俏皮的分界线^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^
以下为homework和project的加分+讨论帖,大家看完相应的Lecture,就可以去写作业,写完作业可以到相应帖子上传运行成功的图片,等待版主加分,完成每次作业奖励1学分(=50大米):
(Lab作业贴不加分!!只讨论!!大家仍然可以上传自己的输出以示交作业~~)
Lecture 2:Using objects【Lab1】
Lecture 3:defining Classes [Homework1]
Lecture4:Types; conditionals【Lab2】
Lecture 6: Loops & arrays II[Homework2]
Lecture 8: Linked lists II[Homework3][Lab3][Lab4]这三个作业都是写链表的...
Lecture 13:Java packages[Project 1]
Lecture 14:Mid term[Homework4]
Lecture 16:More Java[Lab6]
Lecture 17:Game Trees[Homework5]
Lecture 19:Encapsulated lists[lab7]
Lecture 22:Hash codes; stacks & queues
Lecture 24:Trees and traversals[Homework6]
Lecture 30:Four sorting algorithms[Homework7]
Lecture 33: Disjoint Sets[Homework 8]
Lecture 36: Splay trees[Homework 9]
Lecture 37: Amortized analysis [lab13]
【Homework10】 [Project3 Kruskal]
楼主自己也正在学习,所以各位如果进度比我快了,就自己开作业帖子,然后在这个帖子下把作业帖链接放上来。我会给大家加分,然后把作业帖链接到主帖上。
本贴是Berkeley CS 61B 的课程汇总贴,以后大家关于这个课的讨论可以在本贴进行,同时到各个作业贴中提交Homework和project可以有学分奖励!
希望大家一起来跟这个课!!
课程相关链接:
“我到底要不要学这个课呢?”
参考链接:[CS 61B讨论贴][CS 61B介绍+推荐贴]
***********************我是可爱的分界线******************************************

“ 这课每周的lab在berkeley设置的是由两个人在2小时之内完成的,而15次lab只占总成绩的10%,因此我认为在三分地里出于展现学习进度的目的,用10次作业+3次project已经足够了,lab也全部算上的话太琐碎而没必要。”经版友建议,咱们以后在地里就只要上传Project和Homework 运行成功+输出正确的图片 保持进度,才能加学分,lab自己私底下做完就好啦!
大家对于lab的作业有什么不明白或需要讨论的地方,仍然欢迎开lab讨论贴!
^.^^.^^.^^.^^.^^.^^.^^.^我是俏皮的分界线^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^
以下为homework和project的加分+讨论帖,大家看完相应的Lecture,就可以去写作业,写完作业可以到相应帖子上传运行成功的图片,等待版主加分,完成每次作业奖励1学分(=50大米):
(Lab作业贴不加分!!只讨论!!大家仍然可以上传自己的输出以示交作业~~)
Lecture 2:Using objects【Lab1】
Lecture 3:defining Classes [Homework1]
Lecture4:Types; conditionals【Lab2】
Lecture 6: Loops & arrays II[Homework2]
Lecture 8: Linked lists II[Homework3][Lab3][Lab4]这三个作业都是写链表的...
Lecture 13:Java packages[Project 1]
Lecture 14:Mid term[Homework4]
Lecture 16:More Java[Lab6]
Lecture 17:Game Trees[Homework5]
Lecture 19:Encapsulated lists[lab7]
Lecture 22:Hash codes; stacks & queues
Lecture 24:Trees and traversals[Homework6]
Lecture 30:Four sorting algorithms[Homework7]
Lecture 33: Disjoint Sets[Homework 8]
Lecture 36: Splay trees[Homework 9]
Lecture 37: Amortized analysis [lab13]
【Homework10】 [Project3 Kruskal]
楼主自己也正在学习,所以各位如果进度比我快了,就自己开作业帖子,然后在这个帖子下把作业帖链接放上来。我会给大家加分,然后把作业帖链接到主帖上。
已获得 161 大米


+2
共361条回复
jaly50作者
置顶
我两年前上过一学期的java,囫囵吞枣,很多细的东西,老师没教,我也没自己学。我上这个课的初衷是因为前段日子先跟了princeton的Algorithm,发现很多java基础的东西都不懂,比如什么时候用static,final(现在懂了),还有那些莫名其妙的接口,iterator, comparator(现在还不懂),i/o的输入流输出流怎么用也不明白...
这样大大影响了我实现算法的能力,algorithm没能跟下去,打算先补补java基础。
在地里浏览了一下,初步锁定Stanford的CS106A和Berkeley的CS 61B,两个都被人赞誉有佳。
Stanford的资源更为丰富,更好获取:在网易上就可以看(中英字幕),课程材料和作业都可以打包下载,在国内的各大资源ipv6网站也可以很快地把视频包下下来,作业还提供了solution.
所以我就选择了stanford的cs106A。看了三四节课吧。
感觉老师上的非常有趣,语速很快,引人入胜...讲得确实非常好。但让我不喜欢的一点是,他的教学内容、课本、作业,甚至是编程环境,全部都要用stanford的acm包,这样就掩盖了我们要编的程序的本来面目:像是输入输出要怎么写,他都用包重新包装了一下,让我们更好学。
书上是说,为了避免我们陷于java复杂的细节中,所以他们用包,好让我们更好理解,把重点放在教学重点上。
可是我就是来补那些复杂的细节的呀!
才不要学你们的包怎么用...然后离开了你们的环境,转眼又不懂输入输出了。
所以我就转移到berkeley的61B上,这个课只能在youtube上看,有2006和2013两个版本,大家都推荐2006版:有板书:清晰;同学问的问题基础,有利于我们掌握。
感谢@sanguine大晚上的花了好久帮我解决了goagent的故障,我可以自在地翻墙看视频了!
这个老师也很赞,讲得很清楚,跟着他的板书抄笔记还不怕走神;特别赞的还有这本head first Java的教材很棒(这本书本身就是经典java入门必读书目了),写得很清楚,做的比喻很形象;就像看故事书一样生动有趣,重点突出,还有人物冲突。最棒的是,这个没给自己学校的包,程序的方法全按java的标准库来写的,我们自己去查java标准api就会用。这个课的作业分为lab,homework和project.其中project是两到三个人一组做的。
lab1里要求要在一个环境里注册,还要让TA check off...好像面向的是berkeley校内的学生,我们没有入口进入。所以做不了的就不做了,lab1的part2是个小的改错程序,这个可以做。
Homework1里面就有从键盘输入行、读入网页...这种复杂的细节的任务,这正是我想知道的,所以我做得很开心!(才不要你们那些华而不实的包呢...
这样大大影响了我实现算法的能力,algorithm没能跟下去,打算先补补java基础。
在地里浏览了一下,初步锁定Stanford的CS106A和Berkeley的CS 61B,两个都被人赞誉有佳。
Stanford的资源更为丰富,更好获取:在网易上就可以看(中英字幕),课程材料和作业都可以打包下载,在国内的各大资源ipv6网站也可以很快地把视频包下下来,作业还提供了solution.
所以我就选择了stanford的cs106A。看了三四节课吧。
感觉老师上的非常有趣,语速很快,引人入胜...讲得确实非常好。但让我不喜欢的一点是,他的教学内容、课本、作业,甚至是编程环境,全部都要用stanford的acm包,这样就掩盖了我们要编的程序的本来面目:像是输入输出要怎么写,他都用包重新包装了一下,让我们更好学。
书上是说,为了避免我们陷于java复杂的细节中,所以他们用包,好让我们更好理解,把重点放在教学重点上。
可是我就是来补那些复杂的细节的呀!
才不要学你们的包怎么用...然后离开了你们的环境,转眼又不懂输入输出了。
所以我就转移到berkeley的61B上,这个课只能在youtube上看,有2006和2013两个版本,大家都推荐2006版:有板书:清晰;同学问的问题基础,有利于我们掌握。
感谢@sanguine大晚上的花了好久帮我解决了goagent的故障,我可以自在地翻墙看视频了!
这个老师也很赞,讲得很清楚,跟着他的板书抄笔记还不怕走神;特别赞的还有这本head first Java的教材很棒(这本书本身就是经典java入门必读书目了),写得很清楚,做的比喻很形象;就像看故事书一样生动有趣,重点突出,还有人物冲突。最棒的是,这个没给自己学校的包,程序的方法全按java的标准库来写的,我们自己去查java标准api就会用。这个课的作业分为lab,homework和project.其中project是两到三个人一组做的。
lab1里要求要在一个环境里注册,还要让TA check off...好像面向的是berkeley校内的学生,我们没有入口进入。所以做不了的就不做了,lab1的part2是个小的改错程序,这个可以做。
Homework1里面就有从键盘输入行、读入网页...这种复杂的细节的任务,这正是我想知道的,所以我做得很开心!(才不要你们那些华而不实的包呢...
已获得 30 大米


+2
✨ 您正在体验新版论坛UI


