#算法效率
在算法效率中时间复杂度常常作为考点
时间复杂度
语句频度:该条语句可能重复执行的次数
T(n) 所有语句的频度之和,其中n为问题的规模
// An highlighted block
int sum = 0;
for(int i = i; i ,= i;i++)
sum +=1;
...
//时间复杂度O(n)
时间复杂度:T(n) = O(f(n)),其中O表示T(n)与f(n)在n->正无穷时为同阶无穷大
加法规则 T(n) = T(1)+ T(2) = O(MAX(f(n), g(n)))
乘法规则:T(n) = T1(n)T2(n) = O(f(n))+O(g(n)) = O((f(n) g(n)))
通常采用基本运算频度来分析算法时间复杂度

空间复杂度
算法消耗的存储空间,记S(n)=O(g(n))
除本身所用的指令、常数、变量和输入数据外,还需要一些对数据进行操作的工作单元和存储为实现算法所需的一些信息的辅助空间。
★算法原地工作时指算法所需辅助空间为常量,o(1)

本文深入探讨了算法的时间复杂度和空间复杂度,详细解释了语句频度的概念,并介绍了时间复杂度的基本计算规则,如加法规则和乘法规则。此外,还讲解了如何通过基本运算频度来分析算法的时间复杂度,以及算法的空间复杂度如何衡量。
675

被折叠的 条评论
为什么被折叠?



