第10话:什么是算法?
2012-06-07 00:00
796 查看
算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。
算法定义中,提到了指令,指令能被人或机器等计算装置执行。它可以是计算机指令,也可以是我们平时的语言文字。计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。
什么是算法呢?简单来说,算法就是描述解决问题的方法。
现实世界中的问题千奇百怪,算法当然也就千变万化,没有通用的算法可以解决所有的问题。甚至解决一个小问题,很优秀的算法却不一定适合它。
算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,例如数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等。计算机基础课程好比为“内功”,新的语言、技术、标准好比“外功”。整天赶时髦的人最后只懂得招式,没有功力,是不可能成为高手的。
数据结构与算法就好像《加速世界》里面的心念系统一样,不懂得心念系统的人永远是菜鸟,但是一旦你懂得心念系统,你想得到的几乎都能做得到。
呵,你沉迷了。不过这个比喻确实不错,我也很喜欢《加速世界》~
第一话:你的数据结构怎么学的?
第二话:数据结构的历史与来由
第三话:关于数据结构的一些概念
第四话:数据的逻辑结构
第五话:数据的物理结构
第六话:关于数据类型
第七话:抽象数据类型ADT
第八话:补充数据结构基本概念的关系
第九话:数据结构与算法的关系
第10话:什么是算法?
第11话:算法的五个基本特征
第12话:什么样的算法才是好算法
第13话:算法的性能分析
第14话:如何计算算法的时间复杂度
第15话:算法的最坏情况与平均情况
第16话:算法的空间复杂度
算法定义中,提到了指令,指令能被人或机器等计算装置执行。它可以是计算机指令,也可以是我们平时的语言文字。计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。
什么是算法呢?简单来说,算法就是描述解决问题的方法。
现实世界中的问题千奇百怪,算法当然也就千变万化,没有通用的算法可以解决所有的问题。甚至解决一个小问题,很优秀的算法却不一定适合它。
算法是计算机科学领域最重要的基石之一,但却受到了国内一些程序员的冷落。许多学生看到一些公司在招聘时要求的编程语言五花八门就产生了一种误解,认为学计算机就是学各种编程语言,或者认为,学习最新的语言、技术、标准就是最好的铺路方法。其实大家都被这些公司误导了。编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论,例如数据结构、算法、编译原理、计算机体系结构、关系型数据库原理等等。计算机基础课程好比为“内功”,新的语言、技术、标准好比“外功”。整天赶时髦的人最后只懂得招式,没有功力,是不可能成为高手的。
数据结构与算法就好像《加速世界》里面的心念系统一样,不懂得心念系统的人永远是菜鸟,但是一旦你懂得心念系统,你想得到的几乎都能做得到。
呵,你沉迷了。不过这个比喻确实不错,我也很喜欢《加速世界》~
延伸阅读
此文章所在专题列表如下:第一话:你的数据结构怎么学的?
第二话:数据结构的历史与来由
第三话:关于数据结构的一些概念
第四话:数据的逻辑结构
第五话:数据的物理结构
第六话:关于数据类型
第七话:抽象数据类型ADT
第八话:补充数据结构基本概念的关系
第九话:数据结构与算法的关系
第10话:什么是算法?
第11话:算法的五个基本特征
第12话:什么样的算法才是好算法
第13话:算法的性能分析
第14话:如何计算算法的时间复杂度
第15话:算法的最坏情况与平均情况
第16话:算法的空间复杂度
相关文章推荐
- 人类是如何识别物体的呢,和图像学中基于特征的算法有什么异同?
- 20万、50万、100万的算法工程师,到底有什么区别?
- [C++]真正的四舍五入方法 不要再相信什么一句话的算法了
- 学算法到底有什么用
- 什么是算法
- 数据结构和算法到底有什么用?一个例子说明。
- 打算学习图像算法要准备些什么基本的东西呢
- 算法与数据结构题目 4.3 不知道取什么好
- 什么是算法
- 算法(Algorithm)是什么?
- 什么叫做算法的?
- HDU-1874-畅通工程续(随便你什么算法,反正我是睡不着)
- 什么是算法,什么是数据结构
- (召集)你能想到的最奇妙的算法题是什么?
- 什么是算法
- 我能用Windows PowerShell做什么:执行日期算法
- 算法问题:什么是P问题、NP问题和NPC问题
- 算法问题:什么是P问题、NP问题和NPC问题
- 【算法学习笔记】01.先说点什么吧
- 如何开发一个异常检测系统:使用什么特征变量(features)来构建异常检测算法