暗时间 第三章
暗时间 第三章
跟波利亚学解题
跟波利亚学解题 ** 波利亚的三本书 《how to solve it》 《数学的发现》 《数学与猜想》** 大部分的书籍只是证明求解,而没有真实的求证过程
一些方法(解决题目,解决生活问题、生活决策)
- 时刻不忘位置变量
- 用特例启发思考
- 反过来推导(由结论反过来推导条件)
- 试错 (枚举所有可能解)
- 调整题目条件(改变环境变量, 环境可以理解为生活中的)
- 类似问题(将问题抽象, 与8 有共通的地方, 将问题抽象泛化抽象出更加本质的东西)
- 查看反例
- 将问题泛化求解更一般的问题
使用潜意识解决问题(需要长时间的锻炼, 将问题转化为潜意识的思考)
好题目坏题目 1. 不需要用到未来的知识 2. 用到未来的知识,但是可以通过对题目的分析获取 3. 考察解题的一般性思路,而不是特定的技巧 4. 考察思维能力(联想、类比、抽象、归纳演绎) 坏题目: 将知识性的题目当成能力型的题目
生活的本质就是解题
锤子和钉子 关注要解决的问题,而不是我拥有什么方法解决问题
- 鱼是最后一个看到水的
1 2
总而言之, 大众对设计的定性存在严重的问题,许多人把设计模式当作时精巧的利器。然而事实上实际上远非如此, 设计模式是补丁,其出现往往意味着语言不够强大,其使用意味着大量的,与所要达到的编程目的无关的样板式代码
把简单的事情搞复杂的比比皆是,把复杂的事情搞简单的则凤毛麟角 语言之争 避免思维被一门语言所束缚的最好办法就是 “学些一门新的语言” think out of the box
- 一些相关的问题 ** 停机问题 **
定义: 不存在这样一个程序(算法), 它能够计算任何程序(算法)在给定输入上是否能够结束(停机)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
//我们假定下面的函数符合条件(可以验证一个函数是否能够停机) bool God_algo(char* program, char* input) { if(<program> halt on <input>) return true; return false; } // 那么下面的函数则可以永远不能够被判断是否停机 bool Satan_algo(char* program) { if(God_algo(char*program, program)){ while(1) // loop forerver return false; }else{ return true; } } Satan_alog(Satan_alog) // 存在悖论,考虑函数是否可以被判定停机
This post is licensed under CC BY 4.0 by the author.