影响程序效率的因素有哪些

影响程序效率的因素有哪些,第1张

算法、代码量等等。

程序效率是指程序的执行速度以及占用的存储空间。源程序的效率与详细设计阶段确定的算法的效率有直接的联系,算法是影响程序效率的重要因素。

在将详细设计阶段产生的算法转换成源程序代码的过程中,应考虑以下问题:

1、在编写程序前,尽可能化简有关的算术表达式和逻辑表达式。空晌

2、仔细检查算法中的嵌套循环,尽可能将某些语句或表达式移到循环外面。

3、尽量避免使姿枯用多维数组。

4、尽量避免使用指针和复杂表达式。

5、采用快速的算术运算。

迹亏洞6、不要混淆数据类型,避免在表达式中出现类型混杂。

7、尽量采用整数算术表达式和布尔表达式。

8、选用等效的高效率算法。

算法和程序的区别是:

(1) 两者定义不同。算法是对特定问题求解步骤的描述,它是有限序列指令。而程序是实现预期目的而进行 *** 作的一系春世列语句和指令。

说通俗一些算法是解决一个问题的思路,程序,是解决这些问题所具体好写的代码。算法没有语言界限。他只是一个思路。为实现相同的一个算法,用不同语言编写的程序会不一样。

(2)两者的书写规定不同神衫。程序必须用规定的程序设计语言来写,而算法很随意。算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些逻辑判断。

简单算法举例 例:求 1*2*3*4*5

步骤 1 :先求 1*2 ,得到结果 2 。

步骤 2 :将步骤 1 得到的乘积 2 再乘以 3 ,得到结果 6 。

步骤 3 :将步骤 2 得到的乘积 6 再乘以 4 ,得到结果 24 。

步骤 4 :将步骤 3 得到的乘积 24 再乘以 5 ,得到最后结果 120 。

算法与程序的联系 :

算法和程序都是指令的有限序列 ,但是程序是算法,而算法不一定是 程序游森腔。程序 = 数据结构 + 算法。算法的主要目的在于为人们提供阅读了解所执行的工作流程与步骤。数据结构与算法要通过程序的实现,才能由计算机系统来执行。可以这样理解,数据结构和算法形成了可执行的程序。

程序

扩展资料:

(1)算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态。一个状态到另一个状态的转移不一定是确定的。随机化算法在内的一些算法,包含了一些随机输入。

形式化算法的概念部分源自尝试解决希尔伯特提出的判定问题,并在其后尝试定义有效计算性或者有效方法中成形。这些尝试包括库尔特·哥德尔、Jacques Herbrand和斯蒂芬·科尔·克莱尼分别于1930年、1934年和1935年提出的递归函数,阿隆佐·邱奇于1936年提出的λ演算,

1936年Emil Leon Post的Formulation 1和艾伦·图灵1937年提出的图灵机。即使在当前,依然常有直觉想法难以定义为形式化算法的情况。

(2)计算机程序是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具。

它以某些程序设计语言编写,运行于某种目标结构体系上。打个比方,程序就如同以英语(程序设计语言)写作的文章,要让一个懂得英语的人(编译器)同时也会阅读这篇文章的人(结构体系)来阅读、理解、标记这篇文章。

一般的,以英语文本为基础的计算机程序要经过编译、链接而成为人难以解读,但可轻易被计算机所解读的数字格式,然后放入运行。

参考资料:百度百科-算法

百度百科-程序

首先,纠正一下楼主的说法:

算法不是针对C++或者其他任何一门语言来说的。

算法通俗一点就是解决一个问题的方法,针对一个问题每个人都有每个人的解法。但是,相比较而言一定有好有坏,可以认为算法就是好的解决问题的方法。具体可以参照《算法导论》

最简单的例子是关于排序算法,有的算法是线性复杂度,也就是说如果排序单位的元素需要的时间为t,那么对于线性的,也就是对于数据规模为n的,则所需要的时间就是nt,倘若这个复杂度如前变成n.^2,那么就需要的时间是n.^2t,对小的输入渣裤清规模没有关系,那么如果数据规模很大,时间代价就变得很大,如果复杂度变成n.^3,其代价就纯禅可以想象了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12468585.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存