读书笔记 摘自:《编程珠玑-第2版》
第7章 粗略估算
基本技巧:
两个答案比一个答案好
快速检验 量纲检验
经验法则
实践
little定律
系统中物体的平均数量等于物体离开系统 的平均速率和每个物体在系统中停留的平均时间的乘积
任何事都应尽量简单,但不宜过于简单
第8章 算法设计技术
复杂深奥的算法有时可以极大地提高程序性能
重要的算法设计技术
保存状态,避免重复计算。通过使用一切空间来保存中间计算结果,我们避免了花时间对其重复计算
将信息预处理至数据结构中
分治算法
扫描算法
累加数组
下界
第9章 代码调优
有些程序员过于关注程序的效率:由于太在乎细小的“优化”,他们编写出的程序过于精妙,难以维护。
代码调优首先确定程序中开销较大的步伐,然后进行少量的修改
高速缓存原理:最经常访问的数据,其访问开销应该是最小的。
将循环展开则有助于避免管道阻塞、减少分支、增加指令集的并行性。
代码调优的重要原理就是尽量少用它。
效率的角色。不成熟的优化是大量编程灾害的根源
度量工具。“没有坏的话就不要修”
设计层面。只有在确信没有更好的解决方案时才考虑进行代码调优
双刃剑。
高速处理常见情况。
利用等价的代数表达式。
打破函数层次。(函数、宏、内联代码)
使用哨兵合并测试条件。循环展开
修改数据结构,利用等价的代数表达式
合并测试条件
===========文档信息============
读书笔记由博主整理编辑,供非商用学习交流用
版权声明:非商用自由转载-保持署名-注明出处
署名(BY) :dkjkls(dkj卡洛斯)
文章出处:http://blog.youkuaiyun.com/dkjkls