![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试算法刷题汇总
文章平均质量分 54
一天不学习,就给自己一个大b兜子
这个作者很懒,什么都没留下…
展开
-
排序算法【插入排序】
因为第i位的元素向前调整的次数有可能位整个元素的个数位n,也有可能一次都没有调整为0,所以调整的次数的期望值为两者的中间值n/2。最外围的for循环次数为n,所以就可以得到复杂度为"(n*(n+1))/4"。也是O(n^2)的复杂度;选择排序的复杂度为“(n*(n+1))/2”,所以插入排序的时间复杂度比选择排序的时间复杂度小,但是实验发现插入排序算法比选择排序算法时间长,是因为插入算法数组元素交换的次数比较多,选择排序的交换次数少,数组的交换比较浪费时间。如下图所示的,就是插入排序算法思想。原创 2024-08-11 21:10:24 · 80 阅读 · 0 评论 -
排序算法【选择排序算法】
(2)下面的代码是选择排序算法,以及测试的main函数。如下图所示的是选择排序的思想。原创 2024-08-11 17:11:05 · 95 阅读 · 0 评论 -
时间复杂度和空间复杂度
定义:时间复杂度是用来描述算法运行所需的时间随输入规模变化的增长情况。它表示的是算法执行步骤的数量与输入数据规模之间的关系。常见的时间复杂度有:O(1)、O(logn)、O(n)、O(nlogn)、O(n^2)、O(2^n)、O(N!原创 2024-08-11 00:01:01 · 236 阅读 · 0 评论