程序优化技术是一种在不改变程序功能和正确性的前提下,通过改进程序结构、优化算法、提高执行效率等方式,提高程序性能的技术。程序优化技术的优点是:
可以提高程序的执行效率,使程序运磨猜行的更快、更流畅。
可以提高程序的可维护性,使程序更容易理解、游尺更容易维护。
可以提高程序的可扩展性,使程序能神游高够应对更大的数据
根据特定的使用环境,选择竖核合适的数据结构,比如用于接收网络数据的消息队列用链接就比其它数据结构好,没有最好的数据结构,只有最合适的数据结构2.
能使用指针 *** 作的尽量使用指针 *** 作,一般来说,指针比较灵活简洁,对于大部分的编译器,使用指针生成的代码更短,执行效率更高。
3.
递归调用尽量换成内循环或者查表解决,因为族脊频繁的函数调用也是很浪费资源的
4.
还是就是一些针对运算上的细节优化了,很多初学者是忽视了,具体是余穗掘下面这些情况 1)、求余、求2n方运算 a=a%8...
个人理解:1)说的是程序是要供人去读,去维护,因此不能为了效率牺牲这方面的性能,导致程序难以理解,维护。那样,正确性,可靠性及健壮性就无从谈起了。
2) 是说要首先着眼于全局的优化,譬如路径是否合理,有没有多余的步骤,有没有多余的循环?
3) 找出瓶颈的意思是说,程序可能由若干步骤、若干部分组成。有可能大多数步骤的效率都是100,个别步骤的是10,你应该先优化效率低的这些地方。
4) 数据结构与实际要描述的对象,你要进行合理的优化,去除不必要的冗余,等等。而雹胡算法的优化,你可以看一个在一列排好序的数列中查找一个给定数的算法,一般讲算法的书上。采用不同的算法效率是大不一样的,这比仅仅优化代码的效果要好得多。
5) 效率分为(存储)空间效率和时间效率,这两者一般比较难以统一,往往要在两者之间权衡。不过随着计算机技术的发展,现在一般计算机都可以提供足够的空间,因此空间效率往往已经不成为问题了。你只要专注于提高时间效率就可以了!
6) 紧凑的代码主要是去除了好多必要的格式字符达成的。实际执行的机器唤森码都是经过编译产生的,而编译过程中机器会自动过滤掉格式字符,因此是否去除格式字符对源链拦编译产生的机器码没有什么影响。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)