宁波镇海龙赛中学
前言:算法在计算机的应用,主要是通过构建的数学模型,按照特定步骤和方式,将二进制数据转化为输出结果的过程,或是对这一过程进行具体描述。通常算法的设置,要明确执行顺序,即上一步在哪里,下一步是什么,都必须明确,无二义性。但不论计算过程如何复杂,都会在有限步之后结束终止运行。
一、算法基本概念
从宏观的角度来看,一切解决或处理问题的方法都可以看作算法。根据《未来简史》这本书提出的概念,未来信息化、自动化程度极高的社会,维持社会有序、良性运转的基础,都是建立在算法上。即政治生活、科学研究、购物、工作等都有相应的算法支撑。算法是一组有穷规则,针对特定问题的运算序列进行限定,可以明确计算对象的有限性、明确性等特征。
从微观角度来看,算法主要为计算机运行所服务,通过输入、输出数据结果,结合数学思想和方法,提出对特定计算机运行问题的解决方法,具体途径是以编程的形式完成[1]。
二、算法对计算机的重要作用
计算机使用的算法,主要以自然语言、流程图和伪代码的形式展现,保持了较好的移植性、兼容性,它不受到计算机的编程语言影响。不同算法之间有优劣之分,对于计算机的硬件性能利用率有不同的体现,因此为了更好地掌握算法知识,需要掌握一定1~2门编程语言,它是展现算法的基矗
(一)算法展现计算机思想,提升效率
算法设计体现了设计者对于某一程序或硬件设备运行引导的思想性,通过简单的数学模型设计,能够让设计程序按照着特定要求运行,更快地找到目的项。不同算法对应不同的应用场合,针对相应的取值范围,设置一定次数的目的项,通过多种算法互相验证,从而得出计算的论证结果,问题等价转化递归求解。
计算机算法体现了强烈的有穷性特征,这意味着算法运行受到了计算时间和存储能力的限制,因此算法设计要充分考虑运行效率的问题,而这也是算法差异之处。越是能在较短时间内实现计算复杂问题的算法,其时间复杂度就越大,代表该算法的应用效率更高。因此,算法运用要充分考虑其效率性,同时根据问题的适用性,选取针对性更强、效率更高的算法解决问题。
(二)算法与数学关系以及分类
计算机语言的基础是二进制算法,而算法是以数学理论进行描述,因此数学基础研究的发展,也促进了计算机算法的发展。1936年图灵发明的图灵机,奠定了现代计算机的框架结构,其体现了读写和算法程序的理念。配合数学理论,选取合适的数据结构,如数组和链表,设置数据在计算机的读取和写入顺序和特点,根据实际问题的需要,合理选择算法。对于选择算法的合理性,需要根据数学基础而定,两者呈现紧密的联系[2]。
随着计算机的普及和应用范围不断扩大,由此衍生了算法分类。在当前所有算法中,没有一款是通用的。针对不同的应用领域和研究对象,往往对算法进行调整和修改,算法基于数学的基础,又能从其他学科中汲取灵感,优化算法的运行机制,使其更人性化。例如,百度和谷歌构建的搜索引擎,通过搭配爬虫、索引等多种算法,根据搜索者和搜索内容的要求进行排序。区别在于算法设计思路以及服务对象,表现在运算规则等方面的差异。
算法持续优化和改进,从传统的查找点选择到现今的自适应选择,在使用体验和效率方面有很大的提升。通过冒泡排序的方式,可以对相邻的两个元素进行交换,按照人们的浏览习惯可以从小到大或从大到小的方式排序,轴值采用分治策略,以此完成递归的过程,对于问题处理改进有很大的提升。
计算机算法在应用领域更加广泛,特别是在加密领域,随着数学理论运用在计算机程度加深,以及硬件性能的提升。传统的加密算法也在计算机性能强化的情况下被破解,由此也促使了加密算法不断复杂化改进,DES的56位密钥升级到3DES的112位或168位密钥,当前加密密钥的位数已达到256位的AES算法。随着计算机硬件的升级,加密算法的安全性也在不断提高。
(三)算法渗透进生活方方面面
生活中常用的导航软件,对于出发到某目的地,软件根据使用者所处的位置和条件,提出最优或最短的路径算法。对于使用者不同的选择,制定个性化方案。如高德地图,对于使用者到达目的地提出了公交、步行、驾车不同出行方式和工具的最优路线,对于出租车出行还提供了不同价格的网约车服务。在网络购物、点外卖、视听娱乐等方面也充分利用算法的推荐功能,根据用户的搜索和浏览习惯,推送更符合使用者习惯的广告和产品。
结论:综合上述,计算机算法基于数学基础,计算实际问题或优化传统运行方式,为用户提供更好的使用体验。算法的发展日新月异,推陈出新,针对新的应用场景,不断出现新的需求,提出新的设计算法,满足人们的需要。
参考文献:
[1]郑舸.浅议计算机算法认识[J].通讯世界,2018,25(12):288-289.
[2]张邻.浅议计算机算法中的数学方法研究[J].网络安全技术与应用,2014(12):200-201.