浅析关于计算机编程中数学算法优化

2020-02-29 05:39石玉杰安徽机电技师学院
数码世界 2020年2期
关键词:计算结果编程程序

石玉杰 安徽机电技师学院

在信息技术高速发展的今天,大数据、人工智能、云计算等一系列信息技术给我们的生活带来了深刻的改变。而这些,其实都离不开计算机的程序设计。在程序设计中,数据结构和算法构成了程序本身,其中算法优化则直接决定了程序执行的效率。数学算法能够起到很好的程序优化的作用,这点对于计算机的编程而言尤为重要。在本文中,通过探究与分析对数学算法在计算机编程中的应用进行了解读。

一、数学算法和计算机编程的概念

(一)数学算法

我们即使不是专业人员,也非常清楚数学算法是一种数学研究的科学的方法,就其概念而言,是指对发现的事物中的数学问题进行研究,利用归纳性的算法进行总结。数学算法是一种可以有效减少工作量的方法,不仅如此,还能够找到最优化的方法来提高工作效率,更高效地解决问题。可见,数学算法对于计算机编程而言,具有重要的帮助作用,比如我们在程序设计语言C语言中的应用就比较广泛,这一点在计算机编程人员中,往往会被忽略。

(二)计算机编程

说到计算机编程,这个概念在当今时代已经不再陌生,虽然不能从学理上进行定义,但是人们也都能够大体知道计算机编程的概念。所谓的计算机编程,就是在计算机上编辑一段程序,并让计算机执行程序指令的过程。到目前,计算机编程的从业人员越来越多,对计算机编程的优化也越来越注重。计算机编程优化离不开数学算法,因为数学算法是高校的技术方法,由此,不断优化计算机编程中的数学算法,就成为了提高编程效率,优化编程结果的充分条件。

二、计算机编程中数学算法优化的重要性

在科技飞速发展的时代,计算机软件开发要想取得可持续发展,就必须能够解决复杂的数学运算,并且能够解决复杂的编程问题,而使用起来又需要简单化的操作,运用简单的程序运行。这一切都需要数学算法的技术支撑。数学算法最基本的就是数学建模,通过数学建模可以将生活中的抽象问题进行简单化的处理,可以降低难度,从而提高效率。基于数学模型的计算机编程优化,关键的就是数学算法的掌握程度。而计算机编程的软件更新速度又很快,因此其复杂程度也在不断提高,这对于编程人员来说,就成为了加重负担的事情。因为编程人员需要对其进行系统化的优化。

要想进行计算机编程,首先要建立一个数学算法模型。这个模型一定要科学、合理、贴合程序,将数学算法和计算机程序进行结合,这样才能保证计算机编程的有效、高速的完成。计算机编程中,数学算法的优化对有效资料的搜集和整理有很大作用。通过数学算法模型的建立,可以将问题描述的更加直观和形象,这样才能找到解决问题的关键。同时,计算机编程中的数量关系需要与数学算法进行对应,这样有利于提高数学算法优化的精准性;数学算法的优化,也能提高计算机软件中程序的执行力、运行速率等一系列功能效率,能够保证计算机编程顺利进展。

三、合理设计数据结

要想对计算机编程中的数学算法进行优化,就要对其中的数据结进行合理的设计。如果想达到编程优化的效果,数据结的设计是必不可少的,因为它可以将变量的位置改变。优化数算学法,就是要减少变量的运行空间,这样才能达到计算机编程优化的目的。比如,稀疏矩阵,它的元素很多,矩阵空间要进行压缩,如果对其直接压缩,会浪费二维数组,那么要想对矩阵压缩,就需要利用三元组进行压缩,进而达到对算法空间复杂性的降低的效果。

四、计算机编程中数学算法具体优化策略

通过具体的案例介绍和分析,可以将数学算法优化进行描述,进而明确计算机编程数学算法优化的具体策略。具体案例为:准确计算“1x2x34x5……xN”的基础上,明确计算结果末尾数有几个0。其中的N值取值范围在1000~10000之间,注意N不能等于1000,N也不能等于10000。我们分析这个算法过程,实际上属于对案例中未知数n的具体分解,即“bx10x”,其中的“b”属于正整数,没有被10整除。

1.第一种数学计算方法——对计算结果的优化

对计算结果有效数进行客观的分析,并且计算结果,明确计算结果中含有多少个0。利用C++语言进行编程,根据数学算法的模型进行合理的代码编写,开展数学算法优化的分析。这种算法和计算机编程属于传统数学算法,有着一定的缺点,那就是计算量大,计算复杂,对2和5的倍数要进行分析,因为要保证结果中不会出现关于0的数字,所以这种算法的计算准确率不会很高。

实现计算结果的优化的程序可见下图1:

从以上的c++程序中可以明显看到算法的变化带来的程序执行效率的提升和程序的优化,利用mul=mul mod 10000,这段程序以较高的效率派出了超过10000的“大数”造成的while(mul mod==0)这一循环的更多次的循环执行,减少了程序循环的执行就在很大程度上提升了程序执行的时间,实现了效率上的提升以及资源的优化。

2.第二种计算方法——计算过程的优化

还有一些编程人员,为了实现算法的优化会在计算的过程中使用计算过程优化的形式让自己的程序效率提高,比如对“2x5”、“8x5”等这样一些规律的数据和算法进行把握的时候。这些数字相互作用可以生成要求的结果数字0,因为0也属于数字5的倍数。但是实际计算过程我们发现,2的分解数要比5的分解数要多,所以只要能够计算出分解数含有5的个数,就能够知道n的分解数末尾有几个0。可以说,第二种数学算法可以简化计算过程,计算的结果也能更加准确一些,效果要比第一种算法好。这种算法为计算机编程提供了有效的计算模型。相应地,下面便是在该数学计算方法作用下,计算机编程优化分析具体解决方法。

3.第三种数学计算方法——层层剥皮的算法优化

这种方法主要是利用案例中给出算式包含5的结果的个数,通过计算5的个数,就能够准确计算n的末尾的0的具体个数。编程人员会相应地设置计算循环长度,也就是5,在实际的过程中,通过层层剥皮的方式,可以计算出包含5的个数,如5,10,15,……等一系列的规律性的数字,再将这些规律性的数字组合进行剥皮处理,就可以得到剥皮之后的结果,1,2,3,……等等。这里编程人员设置的步长要科学、合理,通过52步长进行计算、剥皮,就可以对25,50,75等数字进行处理,得到剥皮结果是5,10,15等,以此类推,就可以得出步长为n的剥皮结果了。相应地,下面便是循环作用下包含5的个次方数数目总和,如下所示。

五、结语

总而言之,在计算机编程方面,数学算法优化的重要性不言而喻,这种算法的优化很好的提升了程序的执行效率,提高了资源和空间的开销。在程序开发中,小的轻量级的程序在算法的优化方面体现出的优势还不是十分的明显,在一些稍大一些项目中,养成算法优化的习惯对于提高程序的效率的作用是不言而喻的。因此在实际应用中,相关人员要根据计算机编程要求、任务等,科学选择数学算法,注重其优化完善,科学处理计算机编程中的数学问题,提高计算机编程质量。

猜你喜欢
计算结果编程程序
编程,是一种态度
元征X-431实测:奔驰发动机编程
编程小能手
给Windows添加程序快速切换栏
纺织机上诞生的编程
试论我国未决羁押程序的立法完善
“程序猿”的生活什么样
趣味选路
扇面等式
求离散型随机变量的分布列的几种思维方式