@课前对话:
学生:老师,问题是解决了,但我不能很好地把它讲出来。
老师:那是因为没抓住问题的关键。
1,第一章

2,第二章

3,第三章

4,第四章

5,第五章

6,第六章

7,第七章

8,第八章

@总结:
1,如何解决问题?
本书从各种角度对"解决问题"进行了思考。
在解答思考题时,我们经常会使用"先用较小的数试算"的方法。用较小的数进行尝试,可以发现规律、性质、结构、循环、一致性等,认清隐含在问题中的模式(认清模式,进行抽象化)。否则,即使解决了问题,也只是一知半解。
另外,我们还尝试了"对目前得到的结果进行抽象化"。通过抽象化,可以将结论运用到当前问题以外的其他问题中。如果问题的解法严格来说只能够运用于当前问题,那么这个解法就名不副实。只有同样能够运用于其他类似问题的方法,才能称为解法。
2,由不擅长催生出的智慧
人类擅长某事,正是这些不擅长,催生出了各种闪耀的智慧。
人类不擅长处理庞大的数字,因此在计数法上下了很多工夫,罗马数字表示法,指数表示法等。
人类不擅长毫无差错地进行复杂判断,因此逻辑就诞生了。从此可以通过逻辑表达式进行推论,也可以通过卡诺图解决复杂逻辑。
人类不擅长管理大量事物,因此进行了分组。将同一组的事物视为同类事物,管理起来就会方便许多。
人类不擅长处理无穷,因此通过有限的步骤处理无穷。
...诸如此类,人类运用智慧,细心钻研,不断地挑战问题。想法设法缩小问题规模,降低复杂度,使问题达到"可以机械式地解决"的状态。
只要达到这个状态,就能将接力棒传至下一位赛跑运动员----计算机。
你有不擅长的地方吗?那里或许会让你产生新的智慧,找到新窍门呢!
3,幻想法则(也成为高速公路法则)

4,程序员的数学
在一般的编程中,程序员通常需要掌握很深奥的数学知识。不过,认清并简化问题结构,总结出具有一致性的规则等,对于程序员来说是家常便饭。
不要觉得"不擅长数学"就默然处之,而要想到"数学妙趣横生,要多加运用",给每天的编程都注入数学的思维方式。
数学会使得你的编程之路,更有趣,更平坦。
浙公网安备 33010602011771号