12堂趣味逻辑课/(美)阿里·阿莫萨维——学习逻辑思考工具
在形形色色地工作中,你总会面临选择,而选择解决问题的有效方法会让生活变得怡然自得,否则每天只能做重复又枯燥的任务,是在浪费生命。该书给了12个生活小妙招来应对不同类型的问题,提高了解决问题效率,而且小妙招是来自算法编程,让我们懂得算法编程与生活息息相关。其实也不难理解,算法就是为了高效率地解决繁杂任务而产生的,在编程界称之为算法,放到其他领域都有其对应的名称,如哲学界称之为逻辑。万物的本质相通,结果是跨界或者跨领域的知识能够互相解决相似的问题。衡量一个小妙招的好坏的标准是当任务增加时,解决问题所需要的时间,越少越好
。
常数时间<对数时间<线性时间<线性对数时间<平方时间<指数时间
下面来总结该书中12个小妙招
- 数组——袜子配对
- 查找(二分查找)——商场里寻找适合自己尺码的衬衫
- 排序——购物清单,减少去商店的次数
- 关联性——走出迷宫
- 信息拆分——排列散落在地上的信件
分组与排序 - 解决问题——聆听有影响力的音乐,快速融入圈子
相似度和关联度 - 高效表达——写一篇受限140字的微博
压缩 - 推进项目——规定时间完成所有项目
并行,队列,任务,优先级 - 重组信息——在一串项链中增加遗漏的字母串珠
链表和指针 - 提升效率——尽快找到空盒子
函数增长率 - 设定目标——根据作者姓氏将书放到书架上
快速排序,概率 - 运用逻辑——把在超市中行走的区域最小化
堆