算法具有以下特性
1. 有穷性。 不能陷入死循环。
2.确定性。 不会产生错误理解
3.可行性 基础的操作都是可以执行的
4.输入 需要有输入或者像开关一样
5.输出 输出的数值与输入存在某种特定关系
如果你要更进一步: 做一个好的算法
1.正确性:正确的解决求解问题
2.可读性: 算法应当具有良好的可读性。 以帮助人们理解
3.健壮性: 不会因为输入非法数据卡死。记得if return;
4.效率与储存量: 大数据 控制空间
时间复杂度: 循环套循环 则相乘, 单个for接for则相加
常见的时间复杂度
O(1) < O(log2 n)< O(nlog2 n)< O(n2)< O(n3)< O(2^n)< O(n!)< O(n^n)
空间复杂度: