前言
?
计算机的编程就是开发计算机软件的重要手段, 然而应用数学算法则是编程的基础。数学算法属于一种模型的理论基础知识, 在编程里起着归纳及总结问题且进行统一运算的重要作用。所以,为了使计算机的编程能够不断优化、不断发展, 本文对数学算法在我国计算机的编程应用以及发展的趋势进行研究分析,以提高计算机的工作效率。
?
1 我国计算机研究现状及发展趋势
?
计算机网络科学和数学以及其他相关的学科有着十分紧密的关系,但是数学是其中和计算机网络最密切的学科。随着我国科技水平的不断进步, 计算机网络的技术也在不断飞速前进。现如今,在计算机新的研究领域当中,数学和其之间的关联性成为了研究的重点。当前,对于计算机的研究理论上包括了可计算性的理论、网络理论以及算法与设计的理论等。从计算机网络的研究角度来说,这些理论的内容都是相互联系,互相作用的,且都对计算机的研究都有着促进的作用。现在计算机的软件、硬件的发展水平都不断得到提高,但是相对于计算机的体系结构来说,还没有得到更进一步的发展,所以,在使用计算机的时候,处理问题的方法都比较相似。
?
2 研究数学算法的目的、意义及用途
?
一般情况下,人们使用计算机处理问题的时候,都要经过几个步骤。首先,要在具体的问题当中选取一个数学模型,再设计出解决其的算法,然后再进行编制程序进行测试、调整,这是一个使实际问题在计算机的内部得到解决的一个过渡。这是一个人们都较为熟悉也很容易理解的公式:算法+数据的结构=程序,这就充分的体现了程序和算法的相关性、密切性。
?
在编程中建立数学模型, 其实就是用数学的思维及观点解决现实中的问题, 创建数学模型就是使其在创建过程中能够有效的把复杂的问题变简单, 然后再通过抽象的思维转化成为数学结构。经过借助大量的调查证明以及很多数据资料显示,仔细的研究了计算机编程自身可循的规律,进而建立了一个数量的关系式, 再借助数学的方法和理论不断研究与分析,最终得出了结论,建立数学的模型和解答问题的首要条件则是数学的理论知识。
?
随着我国的计算机网络技术的迅猛发展以及软件的升级, 许多数学计算和原理都会转化成简单易操作的菜单式的程序,这也是属于计算机的程序之一。计算机的编程目的也就是使用程序的设计语言来编写程序的代码, 再通过计算机自动完成解答问题。一个新软件诞生前,必须先做的就是建立一个合理的、科学的数学模型后,对实际的问题算法进行设计,然后再到编程的环节。建立科学的数学模型就是编程的第一步,更是其重要的基础。
?
优化编程是在数学模型的基础上来进行的, 如何选择数学算法是优化编程的关键。众所周知, 在计算机的运行过程中,高级语言所编写的程序消耗时间的因素有这些:①按照算法选取策略;②问题规模的大小,例如:求1000 以内的素数;③编译程序产生的计算机代码质量; ④计算机执行命令速度等。利用不同编译程序编译的时候,或者不再同一个计算机运行的时候,效率是有所不同的。抛开与计算机软件、硬件相关联的因素,可以这样认为:某个特定程序运行过程中,工作量大小只依赖于其运行时选择的算法。所以,优化算法能够有效的减少程序运行的时间,且提高其执行的效率,这是编程的核心工作之一。
?
在开展优化程序的工作时, 关键步骤就是需要选择一个高效的运算方法。相同的问题能够利用不同的算法来解决,然而这个算法的质量又会严重影响到程序的效率。可以从下面两个不同的复杂程度来看,即空间复杂程度和实践复杂程度。对于相同的问题可以采用不同的数学算法解答。因此,在编程过程当中,选取算法的时候要充分考虑其效率,不能只顾程序简单化的编写而忽略了将算法与之相结合的作用, 从而导致实际运算的要求无法达到。
?
3 利用实际例子找到优化算法
?
例如在这个题目当中:要求算出1×2×3×…n,问最后得出的数字末尾一个有多少个0。下面将利用一种最优先的方法进行计算其结果。
?
这种算法是按照含5 的数量来推算含0 的数量, 叫做逐层剥皮法。首先5 为步长执行完一次循环后进行剥皮,得出5的个数。然后再以5 的二次方作为步长,进行第二次循环再剥皮,以此类推指导步长等于或者大于n 的时候退出循环。最后的结果就是各次循环之后所求出的含5 的各次方数个数的总和。
?
还有另外两种运算方法, 其中一种是在每次运算就必须进行一次判断,如果出现0 的话就要及时去掉,并记下0 的个数,而不用计算前面的数值,为了防止计算机出现表示范围,就把之前和0 无关的数字省略掉,仅保留几个有效的数字。这样在从1×…×n 后计算总共出现的0 的个数。另外一种算法又是通过观察的方法, 通过观察可以知道生产0 的有2×5、4×5、6×5、8×5 等,经过观察真正能够生产0 的都是5 的倍数。这些含有5 和2 的数比较多,这样就可以得出n 的分解中包含5 的个数,通过这样的方法,就可以进一步的寻求优化的算法了。但是优化的效果都不及上述的第一种。
?
在实际的生活、工作中会遇到很多类似的例子, 优化算法往往能够对计算及的程序运行效率起到很大的作用,所以,必须对加强对类问题的深入研究与分析。
?
根据初步的了解, 很多大学的计算机课程几乎与数学专业的课程一样多,不管是涉及的深度及广度,都达到了相当的水平。在计算机的编程中,应用数学的知识有数理逻辑、数据的处理、图论、概率分布以及线性代数、群论、微分方程和参数估计等等。进行计算机的硬件、软件开发不但要有很高的数学基础,也需要具备较强的空间想象力、逻辑思维能力以及形象思维的能力,这些是不可能和数学分开的。通过长期的学习和实践,进一步提高研究人员的建模能力,结合实际的情况,探讨数学算法在计算机的程序设计中的应用和作用。可以按照下面的依据, 分析各种数学算法的过程, 找出最为优先的算法。①建立数学模型;②对数学模型进行数学分析,确定此模型的正确与否;③选取科学、合理的算法;④利用数学分析选取的算法,论证其有效性;⑤软件编制、调试;⑥软件的运行效果和数学分析之间的比较。
?
4 数学算法的特色及创新
?
在影响计算机程序的运行效率的诸多原因中, 有一个因素就是研究人员使用的计算机的硬件设施限制, 且这种限制达到某种程度后可以自动更新以消弱那些影响程序运行效率的因素,但是会付出很大的代价,在条件相同的情况下,利用数学算法优化计算机的程序,能够有效提高其运行的效率,而且几乎不会付出任何代价。
?
5 结束语
?
综上所述,本文对数学算法进行了深入的研究,并且结合实例对比分析数学算法对计算机的编程优化的影响。数学算法属于较为简捷的数学计算的方法, 运用这种计算方法可以大幅度的降低数学的计算量,运用这种数学的思维,可以有效的把复杂的问题简单化,并且降低了计算难度,大幅度的提高计算的效率,进而提高人们的工作质量。所以,在计算机的编程过程中, 可以充分的结合数学算法设计出编程的逻辑分析的过程,并采取数学算法把复杂的编程变简单,从而解决编程过程中重复编译问题,进而提高编程的运行效率,优化计算机编程。为人们的生活、工作、研究带来更多的便捷,使计算机的编程得到更好、更有效的利用。