算法复杂度

2019-08-28  本文已影响0人  神之试炼者

时间复杂度

O(1)

一次操作即可得到结果, 比如hash算法

O(n)

完成n次计算才能得到结果

O(log2n)

n = 2^x ,x即结果. 原因是有些循环过程并不是定长的增,而是指数的增, 比如二叉树

O(log(m+n))

log不写底数, 一般不关心底数是多少,或者根据上下文推测.

空间复杂度

计算公式:

S(n)=O(f(n))
其中 : n为问题的规模, f(n)为语句关于n所占存储空间的函数

总结

空间复杂度和时间复杂度相互影响,一般空间复杂度较好时,时间复杂度比较差,
所谓的"用时间换空间",或"用空间换时间".

比如: 某些固定结果的计算,可以每次查询都计算, 也可以把结果保存起来,后面查询的时候减少计算,此时时间缩短,空间见长.

上一篇 下一篇

猜你喜欢

热点阅读