算法最终必须体现在芯片内部硬件的一组动作上。
例如,用一串二极管的开关变化,记录一段二进制数码。
这段数码记录了一幅图像,这就需要一个算法。是输入设备的算法。例如摄像头的算法。
然后这段数码转换为显示屏二极管整列的相应开关动作,就显示出了那段数码所记录的图像。
其中的转换又是一种算法。输出设备算法。
若没有这样的硬件动作变化,任何纸上写出来的算法都不能被应用。
按你说的“实现”,那就不能被实现。
而程序分两种:
一种叫做应用程序。依赖 *** 作系统,并不直接 *** 作硬件动作。尽管其中也有许多算法。
一种叫做 *** 作系统。它才是直接 *** 作硬件的程序。任何算法都必须落实在 *** 作系统上,
才可以得到最终的硬件变化结果。
所以,“算法必须最终由计算机程序实现”这句话也算对吧。 *** 作系统也是程序。
只是并不最终。
最终必须由硬件动作实现。
程序设计=数据结构+算法。所谓算法是指解决问题的具体方法是什么。而数据结构是指所要解决的问题在计算机中的表示形式。所以在学C语言的时候只要先掌握算法是如何实现的,即能够把解决问题的方法用C语言描述出来,且描述的“好”即可具体关于算法的含义,有一门课叫“数据结构”有机会可以自学,计算机专业这门课都是必修课。
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。
一个算法应该具有以下五个重要的特征:
有穷性(Finiteness)
算法的有穷性是指算法必须能在执行有限个步骤之后终止;
确切性(Definiteness)
算法的每一步骤必须有确切的定义;
输入项(Input)
一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件;
输出项(Output)
一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;
可行性(Effectiveness)
算法中执行的任何计算步骤都是可以被分解为基本的可执行的 *** 作步,即每个计算步都可以在有限时间内完成(也称之为有效性)。
算法和程序的关系是:
算法就是程序的灵魂,一个需要实现特定功能的程序,实现它的算法可以有很多种,所以算法的优劣决定着程序的好坏。
程序就是遵循一定规则的、为完成指定工作而编写的代码。有一个经典的等式阐明了什么叫程序:程序 = 算法 + 数据结构 + 程序设计方法 + 语言工具和环境 。
以上就是关于算法必须最终由计算机程序实现,这句话对吗全部的内容,包括:算法必须最终由计算机程序实现,这句话对吗、C语言中算法是程序的什么、什么是算法,它的五大特性是什么,算法和程序的关系是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)