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

[入门|算法|数据结构] 普林斯顿算法课 第一部分

全局:
公开课
学校名称: MOOC
Unit号: 6
开课时间: 不限时间
课程全名: Algorithm
平台: Coursera

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

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

x
之前发了帖子在这里http://www.1point3acres.com/bbs/thread-424070-1-1.html,重新贴在这边,看看能不能有加分。
1. 课程的基本信息:课程平台,开课学校,课程全名,开课时间,课程链接。
课程平台: Coursera
开课学校: Princeton University
课程全名: Algorithms, Part
开课时间: 不限
课程链接: https://www.coursera.org/course/algs4partI


2. 课程难度,作业量,每周花在这门课的时间,以及你的基础(是初学者?还是本来就是你的专业内容?)

这是一门经典的数据结构与算法课,免费,分上下两部分,上部分内容包括Union-Find, basic data structures (Array, LinkedList, Queue, Stack, prioprity queue, symbol table...), sorting algorithms (selection sort, insertion sort, shell sort, quick sort, merge sort, heap sort), searching algorithms (Binary search tree, Red-Black BST, hashing), 所有算法都用java实现。
课程和作业难度比较大,我自己在上这门课之前只有上introduction  to computer science and programming using python的基础,完全不会写Java,本来想只学算法概念,然后再试着用python去实现,后来发现不行,不懂java语法,不做implementation理解起算法来很吃力。所以在上这门课之前,最好能一些更基础的Java语法学习,建议去上Berkeley的CS 61B,看看《Head First Java》。这门课一年当中任意时间都能选,基本相当于没有deadline,如果一个session完成不了课程,可以switch到另一个session,进度会被记录下来。我用了三个月(11/2017 - 02/2018)上完了课程的第一部分,每一周的内容大概需要的时间是 1-2h lecture, 3-4h 阅读教材,10-15h weekly program,我基础很差,所以花的时间比较久。
我的每周项目链接:https://github.com/Self-Learner-DD?tab=repositories 因为课程给的项目讲解已经非常详细了,所以我的program都没有加README,抱歉 >.<


3. 各种感想、收获、课程内容介绍、你对这门课的评价等等~~这个就自己发挥啦
这门课理论分析少,内容很实用,Prof. Robert Sedgewick讲解得很清晰,一些比较难理解的算法都配有动态图片演示,代码风格很简洁,非常值得学习。每周的project比较有难度,但设计得很棒,能够使你对算法有更深入的理解,课程平台提供作业 auto-grading,这一点我很喜欢,不会出现闷头做了作业也不知道对错的情况。
我现在在上第二部分,主要讲图(DFS, BFS, Dijkstra, Prim) 和字符串 (substring search, regular expression, data compression)相关的算法,有了这些基础之后,刷题会感觉好很多,很多题虽然还是不会做,但是理解答案不成问题了。
强烈推荐这门课,如果要给这门课打分的话,我会给满分。


4. 这门课和其他你跟过的课,用过的资源或者是学校上过的课有什么区别?(选答,如果你还跟过其他类似的课的话)
我上过一点Berkeley的CS61B,没跟完。这门课内容更基础一些,只有视频,没有公开课版本,所以作业不能被grade。





上一篇:普林斯顿 算法课 (上)学习总结,附每周Project链接
下一篇:计算机系统课程推荐 Build a Modern Computer from First Principles: Nand to T
全局:
感谢楼主那么相信的介绍了通过学习这门课的感受。本人小白一枚,梦想着有一天也能拥有刷题的能力。所以一直在寻找比较不错的公开课或者材料以及书籍。
本人有Java基础,应该还算说得过去,但唯独就是没有做过什么项目。只是简单的有基础,跟白白没什么区别。所以希望通过这波操作,可以提升自己对算法的理解和掌握,同时也能提升Java基础与强化。

感谢!
回复

使用道具 举报

🔗
 楼主| Self_Learner 2018-6-27 15:20:20 | 只看该作者
全局:
欲暴的齿轮 发表于 2018-6-27 05:22
感谢楼主那么相信的介绍了通过学习这门课的感受。本人小白一枚,梦想着有一天也能拥有刷题的能力。所以一直 ...

想学算法,这门课以及Berkeley的CS 61B都可以考虑,书的话,算法和数据结构可以看这门课配套的小红书, JAVA语法基础可以看First Head Java~加油啊~
回复

使用道具 举报

全局:
Self_Learner 发表于 2018-6-27 15:20
想学算法,这门课以及Berkeley的CS 61B都可以考虑,书的话,算法和数据结构可以看这门课配套的小红书, J ...

太感谢了,First head Java已经看过一遍,听你这么一说,我觉得有必要再看一遍。准备开始你说的那两门算法课。总觉得自己不是块学习的料,但心里总是不甘心,凭什么别人可以 我不能。给自己加油吧。

感谢

准备今天就开始新的征程了。
回复

使用道具 举报

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

本版积分规则

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