一、算法的定义
广义: 解决特定问题的方法。
狭义: 数据结构具备的功能。
二、算法的特征
1.有穷性
2.确切性
3.输入项
4.输出项
5.可行性
三、算法的评定
(1)时间复杂度:
一个用于描述算法在执行时,随着输入参数数量的变化,而执次数发生变化的函数。
一般采用大O表示法:O(函数)
常见的时间杂度:
常数阶 O(1)
对数阶 O(logn)
线性阶 O(n)
线性对数阶 O(nlogn)
平方阶 O(n?)
指数阶 O(2^n)
(2)空间复杂度:
一个用于描述算法在执行时,随着输入参数数量的变化,而需要存储空间发生变化的函数。
常见的空间复杂度:
O(1)、O(n)、O(2n)、O(n?)