算法设计与分析 1
问题:
1、用计算机解决一个现实中的问题步骤
2、算法
3、例子:
4、总结
我的回答:
1、用计算机解决一个现实中的问题步骤
问题分析:就是审题,明白讲什么
数学模型建立:就是建立问题相关的数学模型,比如:函数
算法的设计与选择:(算法设计是解决问题的核心)
设计:就是求解特定类型的一系列步骤
选择:因为解决问题的方法有很多(>1),所以选择最适合的
算法的表示:就是有的算法很复杂,我们可以借助工具加深理解,比如:画图
算法的分析:你需要分析算法的时间复杂度和空间复杂度(简单的说就是他用了多久解决问题,用来cpu多少资源)
算法的实现:就是用某种计算机语言实现
程序的调试:就是测试(让它跑,看看会不会中途出现问题)
结果整理文档编制:字面上的意思
2、算法
算法的定义:
算法是个过程;它是对解决问题(计算机想法)的方法和步骤的描述
算法就是计算机结题的过程
(重点)程序与算法的主要区别:程序是用计算机可以理解的语言书写的;
但是算法一般是没有这样的限制的。
程序=数据结构+算法
算法= 操作+控制结构+数据结构(组成的)
算法的性质(自己百度。后面写多都有感觉)
算法的地位(很重要):是计算机学科的灵魂
所以说:硬件是肉体,也是非常重要的,跟算法比其实地位是一样的
算法的基本特征:
有穷性;就是有限时间可以得出结果
确定性:没有二义性
可行性:可以运行、实现
算法有0个或者多个输入:字面上的意思
算法有1个或者多个输出:字面上的意思
算法设计的基本方法:
1 结构化方法:
(自顶向下)(逐步求精)
2 面向对象方法
对象 = 数据+ 对数据操作的代码实体
(重点)面向对象的特征:
抽象化,封装性,多态性,继承性(后面三个是贼重要的)
算法描述:
算法 = 控制结构 + 原操作
3、例子:
4、总结:
这个就是告诉你。算法是什么,怎么由问题到代码。
会当凌绝顶,一览众山小