zoukankan      html  css  js  c++  java
  • 第十次读书笔记

           前几周读了Jon Bentley的著作《编程珠玑》部分章节,这本书对于我这种虽然上了一学期软工但是还是新手的人很友好,大多是讲一些遇到问题是的解决思维与平时编程时的思路问题,对我很有帮助。

          大多时候,我们十分注意解决问题所用的算法,而忽视问题本身的重要性。拿到问题的第一步,应该研究问题的每一个细节,细节的偏差会导致解决问题时方法的重大不同。如果我们研究问题本身的时间花的太少,很可能会走很多弯路,事倍功半。

          令我感兴趣的是文中关于代码调优法则的讨论。里面设计到很多法则。首先是空间换时间法则。空间换时间在很多地方都见得到。如哈希表开得越大一般效率就越高。在今天尤为适用更追求速度提升时代,空间换时间的思想尤为适用。循环法则也是很重要的一条。常见的应用有:将代码移出循环、循环展开、删除赋值、消除无条件分支、循环合并等。另外我们应该减少过程调用,因为这会带来大量开销。我们还可以减少不必要的存储器调用,如引入临时变量。在每次迭代中执行更多的数据操作来减小循环开销。还有,使用指针而不是数组进行引用也能改进程序的性能。但是书中也指出,优化的性能是有限的,并且我们需要在程序的简单性和运行速度之间进行权衡折中,因为优化往往伴随着抽象性的降低。

  • 相关阅读:
    Ubuntu 上 hi3531 交叉编译环境 arm-hisiv100nptl-linux 建设过程
    计算机系统巡回赛的深入理解(三)机器级表示计划
    iOS设备定位
    NDK/JNI学习--进口hello-jniproject
    IP Camera 和 Web Camera 差分
    ORA-00020的思考
    SSL&TLS传输层加密协议实现图解--(重要)
    iOS 中可用的受信任根证书列表
    iOS 9 中可用的受信任根证书列表
    图解SSL/TLS协议
  • 原文地址:https://www.cnblogs.com/ustcccj/p/9118673.html
Copyright © 2011-2022 走看看