Design of Computer Programs
开始时间: 04/22/2022
持续时间: 自主
课程主页: https://www.udacity.com/course/cs212
课程评论: 4 个评论
评论课程
关注课程
课程详情
Move along the path towards becoming an expert programmer! In this class you will practice going from a problem description to a solution, using a series of assignments.
Lesson 1: Winning Poker Hands
Steps of the design process; Developing for clarity and generality; Arguments for program correctness; Experimentation and simulation.; Design tradeoffs; Simplicity and Clarity. Decomposition and composability.
Lesson 2: Back of the Envelope
Back of envelope calculations; When to use brute force and when to be clever; The Zebra puzzle; Generator expressions; Permutations and combinations. Cryptarithmetic; Recursive and wishful thinking.
Lesson 3: Regular Expressions, other languages and interpreters
Defining the language of regular expressions; Interpreting the language; Defining the set of strings matched by a regular expression;
Other languages.
Lesson 4: Dealing with complexity through search
Search: finding your way with a flashlight or boat; pouring water. Analyzing the efficiency of an algorithm; Recurrence relations; Matching data types with algorithms; Longest palindrome substring algorithm.
Lesson 5: Dealing with uncertainty through probability
Probability: the game of Pig; Maximizing expected utility to optimize strategy.
Lesson 6: Word Games
Managing complexity; Large sets of words; Appropriate data structures; Word games.
Lesson 7: Conclusion
Final exam/project
课程评论(4条)
0
|
大吃一惊异
2014-06-29 12:29
0 票支持; 0 票反对
对这门课有复杂的情感。一方面,Norvig讲课很好,他选的几个topic我挺喜欢的(搜索,造工具,概率reasoning等等),看大神解决问题的过程很过瘾。另一方面,他让学生实践的切入点通常是通过各种游戏和puzzle,这个不太对我胃口。本人对扑克,保龄球,飞镖什么的一点都没兴趣,为了完成作业还得实现他们的规则,略感蛋疼。最大的收获是bird by bird。
|
2
|
52nlp
2014-02-26 09:18
2 票支持; 0 票反对
战战兢兢,如履薄冰的完成了这门课程,也是我在Udacity上耗时最长的课程,不过毕竟是Peter Norvig大牛的课程,同时作为Udacity的联合创始人,这门课真心不错。每个单元都围绕一个或多个有意思的问题展开,基本上是问题驱动式的编程,很多时候自己用笨拙的方法解决完一个问题后,再看Norvig大牛的答案,常常有原来可以如此简单而优雅的Python解决方案。不过课程难道确实很大,但是内容很厚实,非常非常推荐,比较适合有一定编程及Python基础的同学来尝试。
|
1
|
要有光LTBL
2013-10-17 13:46
1 票支持; 0 票反对
一开始学编程就上了这门课,难度相当之高,每周作业都觉得我肯定写不出来。。。虽然最后都写出来了吧= =
如果能上下来收获也是非常非常非常大的。讲得也很好,讲完了最后一段视频跟第一段比感觉老师苍老了很多。。。
|
2
|
wzyer
2013-05-22 15:52
2 票支持; 0 票反对
Peter Norvig的名气让我选了这门课。考虑到他的著名lisp程序员身份,这门课可能会有点偏函数式编程。而且我觉得这门课还是有一定难度,不建议新手选择。不过,能亲眼看到大师给你敲代码,解决问题,绝对是一个不能错过的体验。
|