衡量算法的标准(五个):
注意:都是以大概词汇来进行描述,因为都只是以数学上的公式来进行运算出来的。
1:时间复杂度:
可以简单的说就是:大概程序要被执行的次数,而非时间。
注意:是次数,不是时间,因为不同机器的性能是不一样的,不要用计时器在那里计时谁的更快。当然,如果在同一台电脑上运行计时另说。
Question:怎样看待一个程序执行的速度是快还是慢?
Answer:要看他里边最关键的运行次数最多的那一个步骤到底执行了几次,用这个来衡量算法的时间复杂度
2:空间复杂度:
同样简单来说就是:算法执行过程中大概所占用的最大的内存。
3:难易程度:
所研究的算法尽可能让大家能看懂。
4:健壮性:
简单来说哦,不要一碰就倒。。。不结实
5:正确性:
一定要正确,感觉这一特性说不说都是可以,不正确也不能用,这一切的前提都是以正确为前提的。