啥是算法(算法到底是什么意思)
导语:算法简介——什么是算法?
1、算法及其基本特征
算法是指对解题方案的准确而完整的描述。简说单地说,算法就是解决问题的操作步骤。
算法不等于数学上的计算方法,也不等于程序。程序可以描述算法。
算法的基本特征如下:
(1)可行性:步骤可以实现;执行结果达到预期目的。
(2)确定性:步骤明确不模棱两可,不准有多义性。
(3)有穷性:有限的时间完成。
(4)拥有足够的情报:算法在拥有足够的输入信息和初始化信息时,才是有效的;当提供的情报不够时,算法可能无效。
2.算法复杂度
算法复杂度用来衡量算法的优劣,它包括算法间的时间复杂度和算法的空间复杂度。
(1 )算法的时间复杂度
算法的时间复杂度是指执行算法所需要的计算工作量。
算法的时间复杂度≠算法程序执行的具体时间。算法程序执行的具体时间受到所使用的计算
机、程序设计语言以及算法实现过程中的许多细节的影响。而算法的时间复杂度与这些因素无关。算法的计算工作量是用算法所执行的基本运算次数来度量的。算法所执行的基本运算次数与问题的规模有关。
在具体分析一个算法的工作量时,在同一个问题规模下,算法所执行的基本运算次数还可能与特定的输入有关。即输入不同时,算法所执行的基本运算次数不同。
(2)算法的空间复杂度
算法的空间复杂度是指执行这个算法所需要的内存空间。
算法执行期间所需的存储空间包括3个部分:输入数据所占的存储空间;程序本身所占的存储空间;算法执行过程中所需要的额外空间。
其中,额外空间包括算法程序执行过程中的工作单元,以及某种数据结构所需要的附加存储空间。
如果额外空间量相对于问题规模(即输入数据所占的存储空间)来说是常数,即额外空间量不随问题规模的变化而变化,则称该算法是原地( in place)工作的。
为了降低算法的空间复杂度,主要应减少输入数据所占的存储空间以及额外空间,通常采用压缩存储技术。
免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小滢创作整理编辑!