Chapter3: 更好的查找与排序算法
4. 思考算法的方法论
思考算法的方法论
举例归纳法
先列举一些具体的例子,看看能否发现其中的一般规则。
模式匹配法
将现有问题与相似问题作比较,看看能否通过修改相关问题的解法来解决新问题。
简化推广法
首先修改某个约束条件,比如数据类型或数据量,然后解决这个简化后的问题,之后再将这个问题进行推广,调整简化问题的解决方案来解决原问题。
简单构造法
其实就是递归的思想,先从基本的情况来解决问题,比如求出 n=1
的结果,再求出 n=2
的结果,接着就可以试着求出 n=3
结果了。
数据结构头脑风暴法
从数据结构出发,过一遍数据结构,数组、链表、树、图、堆等,想想能不能用这些数据结构做,怎么做。
参考资料
[1] 《程序员面试金典》