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

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

 
全局:
公开课
学校名称: Princeton
Unit号: 1
开课时间: 2019-07-17
课程全名: Princeton Algorithms
平台: Coursera
URL: https://www.coursera.org/learn/algorithms-part1/home/welcome

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

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

x
课程网站:https://www.coursera.org/learn/algorithms-part1/home/welcome (这是part1的,学完了在coursera上搜索princeton algorithms part2继续就行)
Princeton Algorithms是我最想上的课,因为对转专业cs选手来说,最重要的一门课就是数据结构与算法,而这门课和它配套的红书教材是几个在flag有工作经验的师兄特别推崇的,算是入门算法课中的王者了吧。我3月就尝试了这门课,但那时连一门语言都不会,而这门课是默认学生懂java的,第一节课就跟听天书一样。所以我先去学了cs61b,然后把这门课当作了算法进阶课。虽然通过61b已经掌握了很多数据结构和算法,但这门课还是给我非常大的收获,这也是专门推荐它的原因。

在刷这门课之前,一般要有点java基础,我是通过学cs61b积累的。没接触过java的同学可以先学学61b(https://www.1point3acres.com/bbs/thread-529482-1-1.html我之前做过这门课的总结),也可以找其他方式弥补一下再来,像国内也有很多java网课。

课程分part1和2两部分,1是最常用的基础数据结构和算法,2是难一点的(像graph和string),我感觉最好是都学。每个part有6周的课程,但实际上不用那么久,我用了一个半月完成了2个part所有课程和作业。每周包括2个大类的lecture还有1个本周assignment,lecture结构很好,先讲最粗暴的算法,再一步步优化到现在的版本,而且和61b有时给伪代码不同的一点是,这门课的lecture上给出了所有结构和算法的java code,code还都简洁的可怕,对培养良好的代码风格有特别好的作用,看了这门课之后同一算法我的代码行数都减少挺多。assignment很有意思,不会让你写出某一结构或者算法(你都可以调给好的包),但是要想各种办法用它们实现一个功能,挑战性真的比较强,写了之后对算法理解增进不少。另外这本书还有配套神教材,被称为算法红书,内含所有code,对课程也进行了延伸(不过我感觉这本书不买也可以,ppt上就把东西给的差不多了)。

学完61b之后,我一度以为这门课主要功能就是复习,然后我就被愉快的打脸了。课程内容上就有更新,像strings讲的明显更深入。另外代码风格更简洁,这点是本课着重强调的,对我一介小白来说,感觉找到了码代码样子的理想目标。简单来说,之后面试遇到同样的情况,模仿就完事了。本来以为学过61b了做起作业还不是小菜一碟,结果。。。没0基础刚刚接触61b那么难,但是同样需要挺多的思考和看别人的思考。这门课在coursera的discussion forum是堪称神器的存在,各路大神分享经验,有啥问题基本都能找到答案,比直接谷歌和地里讨论帖给力不少。assignment的grader系统相当强悍,给出的test cases特别全,把每个作业一点一点刷到满分的那种进步感是实实在在的。(part2最后俩作业是刷不到了,难度抖升给我做哭了)

老实说,这门课让我再次明确感受到自己是没有啥cs天赋的。开始的时候虽然觉得作业有点意料之外的难,但是相比起纯小白的61b阶段要好不少,可以不太靠外界帮助,还能一次次完善作业到满分。到part2越往后就越感觉难度的提升,lecture要反复看多次才能搞懂,p2最后俩作业直接是在github大神代码指引下完成的。。让我回忆起了61b开始时那段被作业支配的恐惧,那时就是作业要直接看答案,没想到兜兜转转我又找回了熟悉的感觉。同时段看了一下discussion forum里各路大神刷100,那柠檬恰的,爽。不过话说回来,转cs也不是因为我有天赋,而是因为找工。而在现阶段下,没有很好的天赋,找工问题也不大,看了很多上岸人的分享,感觉学cs只要别太笨,更重要的还是坚持下去和耐心,多补基础多刷题吧。此外,对转专业选手而言,cs这个领域算是相当友好了。像cs61b和princeton algorithms这种神级入门课,都有学校/平台免费公开每一年课程的所有视频资料/作业/autograder,甚至建立forum让各路神仙分享,还能够不断维护更新,可以说最好的资源就在身边。我在商科没有这种感受,转到cs是被这情况震了一下,学一门课,省几千刀学费,确实不是盖的。

对找工来说,最重要的还是刷题,整完这两门课基础也还ok,所以从明天开始就打算开始刷题了。对转专业选手的我来说,感觉有时间还是得多学学,毕竟0基础不是吹的。所以刷有余力的时候也打算通过cs61a学一学Python,多学学语言和补补入门。

我最初接触cs61b和algorithms是通过https://mp.weixin.qq.com/s/Yr5iKGtuW7mD3qURuN_jdg这篇文章,现在两门课学完了,感谢作者googler@码农李小白,他的公号和知乎号都是这个,安利一波(不是广告,号也非盈利,我获益匪浅,觉得应该感谢一波,这篇文章也很良心)。

希望有更多跟我差不多的转专业小白接触一下这门课,coursera免费神课买不了吃亏买不了上当,一个半月也不是很久,还能给你筑个基。



评分

参与人数 16大米 +21 收起 理由
joshxie + 1 很有用的信息!
Midoriii + 1 谢谢分享!
gaoyyy123 + 1 赞一个
Xihongshi414 + 2 给你点个赞!
doudouadventure + 1 很有用的信息!

查看全部评分


上一篇:Optimization Models (GG.C. Calafiore and L. El Ghaouii)教材答案?
下一篇:推荐一门Udemy带你刷题对课~~~

本帖被以下淘专辑推荐:

推荐
jxtxzzw 2020-3-28 20:19:44 | 只看该作者
全局:
Princeton 的这门课真的不错,作业质量非常高,不仅是锻炼了 Java 的语言,对如何选择恰当的数据结构来解决问题也提供了完备的思路,想要得高分非常考验代码功力。

我把 Part I 的作业刷了一遍,借楼主的帖子贴一下我的答案,希望对今后学习的小伙伴有帮助。

这里是代码:https://gitlab.jxtxzzw.com/jxtxzzw/coursera_assignments

这里是我的博客,有比较详细的解释:https://www.jxtxzzw.com/archives/tag/Princeton
回复

使用道具 举报

推荐
mrsuperguo 2019-8-11 20:55:38 | 只看该作者
全局:
Mark,看了决定要看一下,系统的再过一遍算法,为了接下来的肉身翻墙打个底子:D
回复

使用道具 举报

推荐
 楼主| fmusk 2019-7-18 08:37:25 | 只看该作者
全局:
jiulaikankan123 发表于 2019-7-18 08:20
知道这两门神课
但这两门课结课后没有证书和project
对转专业选手 简历薄的问题 lz怎么处理呢

证书是没有的,如果很需要证书的话可以找发证的课。proj是有的,cs61b有3个大proj,princeton algorithms的作业,尤其是后面几个难度也不低,润色一下也能放简历上的
回复

使用道具 举报

全局:
知道这两门神课
但这两门课结课后没有证书和project
对转专业选手 简历薄的问题 lz怎么处理呢
回复

使用道具 举报

🔗
 楼主| fmusk 2019-7-18 08:41:45 | 只看该作者
全局:
有点佛,我的帖子昨晚8点发出去的,到了凌晨被审核完毕(估计是因为里面有一些网页链接),但是显示发出去的时间还是昨晚8点,这样估计是没几个人能看到了。。不知道审核之后能否改成当时发布
回复

使用道具 举报

🔗
mangopassion 2019-8-22 06:11:11 | 只看该作者
全局:
没有上61A, 直接上61B,会不会看不懂?
回复

使用道具 举报

🔗
 楼主| fmusk 2019-8-23 12:07:22 | 只看该作者
全局:
mangopassion 发表于 2019-8-22 06:11
没有上61A, 直接上61B,会不会看不懂?

不会。因为61b是从java基础讲起的,对小白很友好
回复

使用道具 举报

🔗
Wendi8864 2019-10-29 04:35:07 | 只看该作者
本楼:
全局:
感谢分享!
回复

使用道具 举报

🔗
玖玖玖 2020-3-11 13:11:52 | 只看该作者
全局:
码住,国内C/C++起手。我现在脑子都很痛,在跟Princeton Algorithms买了书,准备把书和视频的作业都先完成了
回复

使用道具 举报

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

本版积分规则

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