什么是算法
算法 是计算机解决问题的一系列具体方法,步骤,算法用系统的方法描述解决问题的策略机制,算法包括清晰定义的指令用于计算函数,常用于计算,数据处理和自动推理。
解决不同的问题,需要用不同的算法。
算法的基本特征有
1. 有穷性
算法必须能在有限个步骤执行之后终止。
2. 确切性
算法的每一步骤必须有确切的定义。
3. 输入项
一个算法有0个或多个输入,描述运算对象的初始条件。
4. 输出项目
一个算法有一个或多个输出,以反映对输入数据处理后的结果。
5. 可行性
算法中的任何计算步骤都能被分解为基本的可执行的操作步骤,每个计算步骤都可以在有限时间内完成。
从那些方面来评定一个算法?
一个算法的评定主要有以下几个因素:
1. 时间复杂度
时间复杂度是指执行算法所需要的计算工作流
2. 空间复杂度
空间复杂度是指算法需要消耗的内存空间。
3. 正确性
算法执行是否正确,是评定一个算法优劣的最重要标准。
4. 可读性
可读性是指一个算法可供阅读的容易程度。
5. 鲁棒性
鲁棒性是指一个算法堆对不合理数据输入的反映能力和处理能力,也称为:容错性。
数据结构和算法有什么关系?
数据结构是按一定的逻辑结构把数据组织起来,并以适当的存储方法把逻辑机构组织好的数据存储到计算机中。
算法的目的就是为了能更高效的处理数据,提高数据有运算效率,数据的运算是定义在数据的逻辑结构上,但运算的具体实现要在存储结构上进行。