一.时间复杂度
1.通俗来说,时间复杂度就是估计算法运行时间快慢的一个式子(单位)。一般来说,时间复杂度高的算法比 复杂度低的算法慢
2. 常见的时间复杂度(按效率排序):
3. 如何简单快速地判断算法复杂度(一般情况):
3.1.确定问题规模n
3.2.循环减半的过程 → \xrightarrow{} O(logn)
3.3.k层关于n的循环 → \xrightarrow{} O( n k n^k nk)
二.空间复杂度
1.空间复杂度与时间复杂度类似,空间复杂度是用来评估算法内存占用大小的式子
2.空间复杂度的表示方法与时间复杂度一样
2.1. 空间中使用了几个变量 → \xrightarrow{} O(1)
2.2. 算法使用了长度为n的一维列表 → \xrightarrow{} O(n)
2.3 算法使用了m行n列的二维列表 → \xrightarrow{} O(mn)
##3.由于计算机的性能不断增加,一般情况下我们会选取空间换时间的方法
时空复杂度
最新推荐文章于 2024-09-15 22:31:42 发布