算法中时间和空间复杂度 收藏 阅读:74
2020-04-11 21:14:10

1.时间复杂度

算法执行语句的次数。

常数阶O(1),执行次数固定

对数阶O(log2 n),每次减半

线性阶O(n),比如两次for循环

线性对数阶O(n log2 n),

平方阶O(n^2),

立方阶O(n^3)

k次方阶O(n^K),

指数阶O(2^n)。

随着n的不断增大,时间复杂度不断增大,算法花费时间越多。

2.空间复杂度

算法在运行过程中临时占用存储空间大小的量度。

①忽略常数,用O(1)表示

②递归算法的空间复杂度=递归深度N*每次递归所要的辅助空间

③对于单线程来说,递归有运行时堆栈,求的是递归最深的那一次压栈所耗费的空间的个数,因为递归最深的那一次所耗费的空间足以容纳它所有递归过程。


读后有收获,请打赏。更多精彩内容,请关注微信公众号。有疑问请加QQ交流群:454792501


全部评论

发表评论