《Great Theoretical Ideas In Computer Science》学习笔记

今天偶然翻出以前从同事机器上拷贝过来的一些ppt文档,发现是卡耐基大学的计算机系教授的授课幻灯片,课程名叫Great Theoretical Ideas In Computer Science。翻看了两三堂课的内容,还挺有趣的,整理些有指导性启发性的内容发在这儿。


1. The future belongs to the computer scientist who has:
    Content: An up to date grasp of fundamental problems and solutions
    Method: Principles and techniques to solve the vast array of unfamiliar problems that arise in a rapidly changing field

2. Count without counting: Estimate, Calculate, Analyze
    Induction has many guises. Master their interrelationship.
     .Formal Arguments
     .Loop Invariants
     .Recursion
     .Algorithm Design
     .Recurrences

3. Effective problem solving, learning, and communication techniques
Exemplification:Try out a problem or solution on small examples.
Representation:Understand the relationship between different representations of the same information or idea.
Modularity: Decompose a complex problem into simpler subproblems.
Abstraction: Abstract away the inessential features of a problem.
Similarity: A significant form of intellectual progress is to be able to classify and manipulate distinct objects with regard to a sense in which they are similar. when we come to understand that seemingly unrelated things are related, we are making intellectual progress.
Refinement:The best solution comes from a process of repeatedly refining and inventing alternative solutions.

4. Build your toolbox of abstract structures and concepts. Know the capacities and limits of each tool.

5. Appreciate Alternative Solutions To The Same Problem
When presented with multiple solutions many students remember only the one that they find easiest to understand. The expert student takes the opportunity to think through the similarities and differences between the approaches. Such meditations lay the foundations for effective learning and problem solving.

6. Martial Arts 101
The novice makes a huge motion
The black belt makes a small motion
The master makes a tiny motion
Scanning the brains of master problem solvers. The better the problem solver, the less brain activity is evident. The real masters show almost no brain activity!

7. Value Simplicity
It is natural to think that you are really getting your money’s worth when the professor says very complicated things, but the real value is when the professor makes complex things simple.

8. Repetition Is An Opportunity
A good martial arts student will attentively repeat each fundamental technique many times. In contrast, many college students tune out when a concept (e.g., depth first search) is taught more than once. The better students listen carefully in order to refine and develop their understanding.

If you value simplicity, listen actively to repeated points, and work through the correspondences between different solutions, you are on your way to a lifetime of effective learning and thinking.
With diligence, you may someday reduce your brain activity to zero! 

9. The Master Programmer
The master seeks an algorithm that will use as small  an amount of computer resources (e.g., time, space, communication) as possible. Most “expert” programmers (black belts) will miss the best program because they did not have the patience to refine their solutions further.

10. Learning Advice
Whenever you see something you wish you had thought of, try and formulate the minimal and most general lesson that will insure that you will not miss the same thing the next time. Name the lesson to make it easy to remember.

Example: NAME: Preprocessing
It is sometimes possible to pay a reasonable, one-time preprocessing cost to reorganize your data in such a way as to use it more efficiently later. The extra time required to preprocess can be thought of as additional programming effort.

这儿摘录的是课程介绍中的一些内容,后边还有很多课程是实例性质的。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值