社区
数据结构与算法
帖子详情
如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
arvon009
2011-10-28 02:45:13
如题
...全文
752
6
打赏
收藏
如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
如题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pb_myown
2011-10-28
打赏
举报
回复
楼主应该没把题目说全吧??
ohmygirl
2011-10-28
打赏
举报
回复
必须不存在。
基于比较的算法,时间复杂度o(nlgn),空间复杂度o(1)
计数排序可以达到O(N)的时间复杂度,但是空间的复杂度却是O(N).
Jaya1989
2011-10-28
打赏
举报
回复
[Quote=引用楼主 arvon009 的回复:]
如题
[/Quote]
表示不懂, 应该是不存在这样的算法..
lee535570373
2011-10-28
打赏
举报
回复
基于比较的下界是 O(Nlog N),空间O(1)
计数排序 O(N),但空间O(N)
bellbird
2011-10-28
打赏
举报
回复
建议楼主深入研究这个问题,研究出来后拿下图灵奖应该不成问题
超级大笨狼
2011-10-28
打赏
举报
回复
额,这是不可能的.否则大家都别学算法了,直接都用这个了.
1,时间复杂度O(n),空间复杂度O(N)
2,时间复杂度O(n*Lgn),空间复杂度O(1)
目前最优只能这样,要么牺牲时间,要么牺牲空间.
除非,某些算法的最优情况下,可以做到,比如插入排序后,只有两张牌乱了顺序.
但是,我们一般分析的都是平均情况和最差情况,才是算法重点要做的事情.
算法习题49:如何对n
个数
进行排序
,
要求
时间复杂度
O(n),
空间复杂度
O(1)
博客内容介绍了如何在限制
时间复杂度
为O(n)和
空间复杂度
为O(1)的情况下对n个整数
进行排序
。通过创建一个固定大小的哈希表,遍历数组并增加哈希表中对应元素的计数,然后再遍历哈希表以输出排序后的结果。对于负数的情况,可以考虑扩大哈希表的规模以容纳正负整数。
数据结构——算法之(017)( 如何对n
个数
进行排序
,
要求
时间复杂度
O(n),
空间复杂度
O(1))
本文探讨了一种特殊的排序算法,该算法能够在O(n)的
时间复杂度
和O(1)的
空间复杂度
下运行。通过使用标记法(哈希思想),该算法可以在有限
个数
排列的情况下实现高效排序。具体实现包括定义一个大小为65536的数组来标记重复数字,并提供了一个示例代码来演示这一过程。
数据结构与算法
33,026
社区成员
35,336
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章