社区
Java SE
帖子详情
算法题:找出一个数组中前K个大数的位置
一米怪我咯
2014-04-01 12:27:55
输入:一个数组,k(假设等于10)
输出:这个数组中最大k个数的位置。
现在想到的就只有遍历数组k次。但是觉得这样的做法好笨拙。询问大神有没有好的算法。
...全文
383
2
打赏
收藏
算法题:找出一个数组中前K个大数的位置
输入:一个数组,k(假设等于10) 输出:这个数组中最大k个数的位置。 现在想到的就只有遍历数组k次。但是觉得这样的做法好笨拙。询问大神有没有好的算法。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
-江沐风-
2014-04-01
打赏
举报
回复
用list遍历不知道算不算好的方法
一米怪我咯
2014-04-01
打赏
举报
回复
已经知道怎么做啦。。。再声明一个数组,数组里存放待找出数组的序号(0——n)然后在对输入数组进行排序的时候改变新建数组的相应位置的值,最后根据新建的数组就知道之前数组的最大k个数的位置了。这用空间换时间。。。
获取数组输入K
位置
的最
大数
本文介绍了一种简单的
算法
,用于找到
数组中
指定
位置
K的最
大数
。通过两层循环比较,实现数组内部元素的排序,并返回第K大的元素值。此方法虽效率不高,但易于理解。
算法
题
(一)--
找出
数组中
第k大的数并输出其下标(
数组中
的数有重复)
本文介绍如何
找出
整型
数组中
第K大的数及其所有出现的
位置
,提供了快速排序和堆排序两种方法的实现代码,并探讨了其他解法。
从
数组中
找出
最小的k个数
本文探讨了如何从
数组中
找出
最小的K个数的方法,包括基于快速排序的调整
算法
和利用最大堆的高效解决方案,并详细分析了两种方法的时间复杂度。
算法
题
之
找出
数组里第K大的数
本文介绍了三种有效的
算法
来解决寻找
数组中
前
K个最
大数
的问
题
:直接排序法、K数组排序改进法及递归划分法。针对不同场景和问
题
规模提供了多种解决方案。
算法
题
:在N个乱序的
数组中
找第K大的数
本文介绍了如何在N个乱序
数组中
找到第K大的数,采用类似快速排序的方法,通过随机选取元素X进行划分,并根据划分结果判断第K大元素在哪个部分,最终达到O(n)的时间复杂度。
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章