排序算法
排序的分类包括内部排序和外部排序两种
时间复杂度
①事后统计法——当程序运行完之后进行评测
②事前估算法——通过分析时间复杂度来判断
时间频度
一个算法花费的时间和语句的执行次数成正比,一个算法中的语句执行次数就是时间频度
可以忽略常数项和低次项和系数
时间复杂度
指能操作语句的重复执行次数的某个函数用O(n)=
表示;
**常见的算法时间复杂度由小到大依次为: O(1)<O(log2n)<O(n)<O(nlog2n)<O(n^2^)<O(n^3^)< O(n^k^) < <O(2")<O(n!)**
其中log2n
的代码可以是下面的形式
while(i<100){
i = i * 2;//改成3就是log3n
}
常见的八大算法的平均时间复杂度和最坏时间复杂度的表示以及空间复杂度: