第208章 未来进化的方向(第4页)
作为一个有效方法,算法被用于计算函数,它包含了一系列定义清晰的指令,并可于有限的时间及空间内清楚的表述出来。
算法中的指令描述的是一个计算,当其运行时能从一个初始状态和初始输入(可能为空)开始,经过一系列有限[6]而清晰定义的状态最终产生输出并停止于一个终态。
算法是计算机科学领域最重要的基石之一!
章杉深刻地知道算法的重要性,但并不是所有人都能意识到这点。
算法受到了国内一些人的冷落。
许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。
其实大家都被误导了。
编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,例如数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等。
或许有人会说:“今天计算机这么快,算法还重要吗?”
其实永远不会有太快的计算机,因为我们总会想出新的应用。
虽然在摩尔定律的作用下,计算机的计算能力每年都在飞快增长,价格也在不断下降。
可我们不要忘记,需要处理的信息量更是呈指数级的增长。
现在每人每天都会创造出大量数据(照片,视频,语音,文本等等)。
日益先进的纪录和存储手段使我们每个人的信息量都在爆炸式的增长。
互联网的信息流量和日志容量也在飞快增长。
在科学研究方面,随着研究手段的进步,数据量更是达到了前所未有的程度。
无论是三维图形、海量数据处理、机器学习、语音识别,都需要极大的计算量。
在网络时代,越来越多的挑战需要靠卓越的算法来解决。
尽管我们平时做的程序不需要考虑算法,但实际工作的时候却不得不考虑算法~
Google的网站要处理十亿个以上的搜索,GMail要储存几千万用户的2G邮箱,GoogleEarth要让数十万用户同时在整个地球上遨游,并将合适的图片经过互联网提交给每个用户。
如果没有好的算法,这些应用都无法成为现实。
在这些的应用中,哪怕是最基本的问题都会给传统的计算带来很大的挑战。
例如,每天都有十亿以上的用户访问Google的网站,使用Google的服务,也产生很多很多的日志(Log)。
因为Log每份每秒都在飞速增加,我们必须有聪明的办法来进行处理。
这种情况下必须考虑到算法的潜在影响!
不止是计算机领域,算法很重要!
在高能物理研究方面,很多实验每秒钟都能几个TB的数据量。
但因为处理能力和存储能力的不足,科学家不得不把绝大部分未经处理的数据丢弃掉。
可大家要知道,新元素的信息很有可能就藏在我们来不及处理的数据里面。
同样的,在其他任何领域里,算法可以改变人类的生活。
例如人类基因的研究,就可能因为算法而发明新的医疗方式。
本章未完,点击下一页继续阅读