2021-05-25

排序也称排序算法(Sort Algorithm)

分类:
1.内部排序
在内存中排序
2.外部排序法
数据量过大,需要用到文件/磁盘排序
3.常见的排序算法,如下图
2021-05-25_第1张图片

算法的时间复杂度

 - 事后统计的方法(测量运行时间,进行对比)
 - 事前估计的方法(分析算法的时间复杂度)
 - 事件频度:一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法的语句执行次数多,花费的时间就越多。**一个算法中语句执行次数称为语句频度或事件频度,记为T(n)**,执行曲线无限接近时,常数项可以忽略,低次项也可以忽略,系数可以忽略。

常见的时间复杂度

1.常数阶O(1)

2.对数阶O(log_{2}^{n}

3.线性阶O(n)

4.线性对数阶O(nlog_{2}^{n})

5.平方阶O(n^{2})

6.立方阶O(n^{3})

7.k次方阶O(n^{k})

8.指数阶O(2^{n})

上述时间复杂度不断增大,算法的执行效率低,应该尽可能避免使用指数阶算法。

空间复杂度

一些缓存产品和算法本质就是用空间换时间

 


你可能感兴趣的:(自学笔记,java)