public class MaxnumNofM{ public static int[] MaxnumNofM(int BigArr[], int N ){ //取原始数组的前N个元素 int[] ResArr = new int[N]; for(int i=0; i<N;i++){ ResArr[i] = BigArr[i]; } //标记上一轮是否发生过交换 boolean bExchanged = true; //遍历后续的元素 for(int i = N; i < BigArr.length; ++i){ int idx = 0; //如果上一轮发生过交换 if( bExchanged ){ //找出ResArr中最小的元素 for( int j = 1; j < N; ++j ){ if( ResArr[idx] > ResArr[j] ) idx = j; } } //这个后续元素比ResArr中最小的元素大,则替换。 if( BigArr[i] > ResArr[idx] ){ bExchanged = true; ResArr[idx] = BigArr[i]; } else bExchanged = false; } return ResArr; } public static void main(String[] args) { int[] strArr = {6,5,12,59,87,36,2,8,4,96,31,656,964,41,233,978,456,14,978}; int[] deetArr = MaxnumNofM(strArr,5); for(int i:deetArr) System.out.print(i+" "); } }
M个数里面找出最大的N个数
原创
©著作权归作者所有:来自51CTO博客作者递归梦想的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:递归求取二叉树最小深度和最大深度
下一篇:获取阶乘N!最后一个非零位
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
【ArkTS】鸿蒙开发 比较两个数的大小 用户界面输入两个数并输出较大数
【HarmonyOS】 鸿蒙开发 (比较两个值大小,输出较大值)在DevEco Studio中开发,用户界面输入两个值,比较两个值大小并输出较大值。主要是练习了对TextInput属性的应用。
鸿蒙开发 TextInput属性 用户界面输入 两个值比较大小 ArkTS -
java同时处理多个数据
java同时处理多个数据的三种常用方法详解,并提供了详细的代码示例。
java 抛出异常 多线程 -
用类求几个数组中的最大乘积
0 引言python类是用来描述具有相同的属性和方法的对象的集合,它定义了该集合中每个对象所共有的属性和方法。在学习python
列表 python 编程语言 数据结构 机器学习 -
找数字个数
链接:https://www.nowcoder.com/acm/contest/67/I厌这个数)。现
i++ #include ios