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

[入门|算法|数据结构] CS61B总结和推荐

   
全局:
公开课
学校名称: ucberkeley
Unit号: 1
开课时间: 2019-06-03
课程全名: CS61B Data Structures
平台: 其他
URL: https://inst.eecs.berkeley.edu/~cs61b/archives.html

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

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

x
课程网站:https://inst.eecs.berkeley.edu/~cs61b/archives.html
CS61B在地里绝对是鼎鼎大名了,看过一个googler说,如果时间只够学一门cs课,建议学这一门,因为学完了就能直接刷题了。另外,这门课对于0基础相对友好,因为前1/3都在讲java基础,后面讲数据结构,不需要提前学过编程语言。从3月初到5月底,我用了3个月左右时间完结了这门课程(所有lab hw全部做完,但3个project只做了1个半。。哎尽力了)。


我的背景是文商科转码,之前没有学过一门编程语言。3月最开始是去听princeton algorithm的,因为那也是一门公认数据结构神课。但第一天就发现它还是需要你会一点java的,虽然可以看它的材料弥补,但我当时着实是看不大懂,感觉很像看天书。。当时就听了国内一个李兴华java课,讲的还不错。看了几天之后在地里发现了cs61b,突然发现这门课不咋需要java基础,而且学一门课就可以java和数据结构兼得,岂不美哉。决定后就全心投入cs61b了,直到上周刚刚完结。

我选择了2014spring版本,一个是因为总体内容和后面差别不大,第二是因为地里对这个版本的讨论思路最多。我的学习流程是看讲义-lecture视频-reading-各种作业和项目,最好就是按照syllabus顺序来。有一点值得注意的,看视频之前建议提前读讲义,读完再看视频可以增进不少理解的。另外很多同学没啥时间做作业,但真的强烈建议做lab和homework(project对于0基础新手1个人做还是有些困难的,可以先略过)。作业设计的相当好,15个lab和10个homework能让我们对各种数据结构有比较充分的锻炼,感觉作业含金量能够占到这门课的一半以上。

对于之前没啥编程基础的同学,这门课学起来可能会比较吃力,尤其是作业部分。听lecture和理解讲义一般没啥问题,但我刚开始做作业的时候,真的非常崩溃。感觉课堂上在讲走路,作业直接让你跨栏。最开始都是直接到github上看别人的代码然后理解,后面是看了别人代码理解逻辑之后再自己敲。经历了一个月左右的怀疑期,觉得自己太傻学不动cs。但经历了这段时间后,情况确实有在好转。因为对java理解加深,做多了也大概明白一个程序的框架。不久之后,就不太需要看别人代码了,可以大部分自己写,少部分需要看一下地里讨论的逻辑。再后面就基本可以完全自己码出作业了,之后就是想办法提升代码简洁度和写的速度了。这里反而不会出大问题,因为已经度过了自我怀疑的难关,后面只是方法论问题了。


后面打算学princeton algorithm part 1,其实很多东西cs61b已经讲过了,但看到业界很推崇这门课配套的红书,说上面的代码非常简洁,就想学一学。我是那种自己没办法读进去大部头的课程书籍,但如果跟一门课程是可以读完的。head first java和data structures这两本就是跟cs61b读完的。强推一下head first java这本书,对小白来说是特别友好的java入门书籍。

如果有同样没啥基础来学cs61b的同学,希望我的经历可以给你点鸡汤。从文商科一下子转到cs,初期做lab homework project的时候很难受是正常的,这时需要的就是耐下性子,慢慢想办法解决。完全不会可以看看别人怎么写,会一点就看看讨论区思路,会的多点就多花点时间尝试自己想。和科班同学比我们速度慢,但自己终究是不断进步的不是吗。


评分

参与人数 55大米 +97 收起 理由
苏明未 + 2 给你点个赞!
QingfengMoon + 1 给你点个赞!
cc789521007 + 1 赞一个
Benjemin + 1 很有用的信息!
豌豆尖尖 + 1 赞一个

查看全部评分


上一篇:Ph.D工作两年转行DS 学习计划打卡
下一篇:【零基础转cs】刷CS61AB能用来加分申请吗

本帖被以下淘专辑推荐:

推荐
不败顽童 2019-11-10 23:39:39 | 只看该作者
全局:
Liliumcs 发表于 2019-11-5 15:44
谢谢楼主的总结,我也准备学一下,请问学61B之前不需要学其他的课吗?完全零基础,跟cs不沾边.看有人提到61 ...

我来回答你吧。cs61a用的是python来讲计算机最基本的知识。而cs61b是讲的数据结构和算法(前面部分主要是讲的Java),个人不建议完全零基础来学这门课,否则挫败感太强。我是先在b战自学的Java,再来听的这门课,可以更好的吸收Javase部分。像楼主说的一样。听课都是次要的,最主要的是独立去做lab+hw+proj,至少保证要做完前两个。

评分

参与人数 2大米 +2 收起 理由
ckhwlaone + 1 赞一个
December4 + 1 很有用的信息!

查看全部评分

回复

使用道具 举报

推荐
 楼主| fmusk 2021-1-16 09:31:38 来自APP | 只看该作者
全局:
GalleonYMMP 发表于 2021-01-15 07:17:31
楼主,看到你说大概三个月完成了课程,可以请问一下平均每天投入时间吗?加米了,感谢!
我大概每天5-6小时吧
回复

使用道具 举报

推荐
chloexxl 2021-1-27 06:52:19 | 只看该作者
全局:
帮想转码的好朋友上来找找资源无意中看见这个帖子,楼主太励志了!
回复

使用道具 举报

全局:
很棒,继续加油
回复

使用道具 举报

全局:
你很棒!!完成度很高了
回复

使用道具 举报

全局:
真棒👍 我也是文科转的 总感觉自己哪里不扎实。。看了楼主是分享 感觉知道问题所在和解决方法了
回复

使用道具 举报

🔗
李杉杉 2019-6-4 11:23:20 | 只看该作者
全局:
align校友点赞...lz好有规划啊,都已经上完61b了,我现在才上了1/3左右
回复

使用道具 举报

🔗
 楼主| fmusk 2019-6-4 11:28:58 来自APP | 只看该作者
全局:
李杉杉 发表于 2019/06/04 11:23:20
align校友点赞...lz好有规划啊,都已经上完61b了,我现在才上了1/3左右

嘿嘿加油呀
回复

使用道具 举报

🔗
 楼主| fmusk 2019-6-4 11:29:35 来自APP | 只看该作者
全局:
AnnaLu 发表于 2019/06/04 11:19:20
真棒???? 我也是文科转的 总感觉自己哪里不扎实。。看了楼主是分享 感觉知道问题所在和解决方法了

嗯嗯,开始都会有点不踏实,感觉是自信崩塌到慢慢重塑的过程
回复

使用道具 举报

🔗
 楼主| fmusk 2019-6-4 11:30:12 来自APP | 只看该作者
全局:
simple_xp 发表于 2019/06/04 10:37:42
你很棒!!完成度很高了

谢谢啦!字数字数
回复

使用道具 举报

🔗
 楼主| fmusk 2019-6-4 11:30:55 来自APP | 只看该作者
全局:

一起加油!紫薯紫薯
回复

使用道具 举报

🔗
xueshao 2019-6-4 12:21:53 | 只看该作者
全局:
群主赛高!正在follow你的脚步
回复

使用道具 举报

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

本版积分规则

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