————《趣味算法》————
算法是指对特定问题求解步骤的一种描述。算法只是对问题求解方法的一种描述,不依赖于任何语言,可以使用自然语言、程序设计语言(Java、C++、C#等)描述,也可以使用流程图、框图。一般是使用伪代码描述算法。
算法的特性
有穷性:算法是由若干条指令组成的有穷序列,总是在执行若干次后结束,不可能永不停止。
确定性:每条语句有确定的含义,无歧义。
可行性:算法在当前环境条件下可以通过有限次运算实现。
输入输出:有零个或多个输入,有一个或多个输出。
好算法的标准:正确性,易读性,健壮性,高效性,低储存性。
时间复杂度:算法运行需要的时间,一般将算法的执行次数作为时间复杂度的度量标准。
O(1)<O(log n)<O(n)<O(n log n)<O(n^2)<O(n^3)<O(2^n)<O(n !)<O(n^n)
最坏情况对衡量算法的好坏具有实际的意义。
空间复杂度:算法占用空间大小,一般将算法的辅助空间作为衡量空间复杂度的标准。
空间复杂度的本意是指算法在运行过程中占用了多少存储空间,包括:输入/输出数据、算法本身、额外需要的辅助空间
斐波那契数列(兔子数列)
本文介绍了算法的基本概念,包括算法的定义、特性和评价标准。详细解释了算法的有穷性、确定性、可行性、输入输出特性,以及好算法的五大标准:正确性、易读性、健壮性、高效性和低储存性。此外,还讨论了时间复杂度和空间复杂度的概念,以及斐波那契数列这一经典算法案例。
1044

被折叠的 条评论
为什么被折叠?



