首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
以下排序算法中,同时满足平均时间复杂度O(n*log2n)
[不定项选择题]
以下排序算法中,同时满足平均时间复杂度<O(n*log2n),空间复杂度为O(1)的有哪些:
快速排序
希尔排序
归并排序
堆排序
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(28)
分享
纠错
2个回答
添加回答
0
strive52
这题应该错了吧,应该是b吧,题目是<
发表于 2025-09-09 20:00:42
回复(0)
0
一笑而过2222
希尔排序和堆排序之所以在空间复杂度上能够达到O(1)是因为它们不需要额外的辅助空间来存储临时数据或者递归调用所需的栈空间。 - **希尔排序**:希尔排序是插入排序的改进版本,通过将待排序元素按下标的一定增量分组,对每组使用插入排序,随着增量逐渐减小,每组包含的元素越来越多,当增量减至1时,整个数据序列恰被分成一组,此时就是最后一次插入排序。希尔排序只需要一个额外的变量用于交换元素值,因此空间复杂度为O(1)。 - **堆排序**:堆排序利用了堆的数据结构,不需要额外的辅助空间来存储临时数据。堆排序的核心是建堆和调整堆,建堆过程不需要额外空间,调整堆的过程只需要一个常数级别的额外空间来存储临时变量。因此,堆排序的空间复杂度为O(1)。
发表于 2024-04-26 14:45:52
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
排序
难度:
2条回答
28收藏
153浏览
热门推荐
相关试题
在下列表述中,错误的是()
字符串
树
排序
评论
(43)
在React中渲染列表应该使用哪种方法?
Javascript
评论
(1)
以下哪种情况会导致线程进入阻塞状态()
操作系统
评论
(1)
class B { public:...
C++
评论
(1)
使用单片机PWM输出控制直流电机速...
单片机
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题