设有一组N个数,求其中第K个最大者

xiaoxiao2021-02-28  9

package com.wonders; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * * @author LYY * 题目:设有一组N个数,求其中第K个最大者(选择问题) * 思路:将数组放到List中,然后调用sort进行排序,在反转,最后只需要判断传进来的位置参数-1和循环的集合元素下标相等就可以。 */ public class P1 { public static void main(String[] args) { Integer[] number = {3,2,1,43,6,7,8,94,34,54}; int location = P1.retunLocation(number,3); System.out.println("第K个最大者是:" + location); } public static int retunLocation(Integer[] number,int num){ List<Integer> list = new ArrayList<Integer>(); int location = 0; for (Integer integer : number) { list.add(integer); } Collections.sort(list); Collections.reverse(list); for(int i=0;i<list.size();i++){ if ((num-1) == i) { location = list.get(i); } } return location; } }

转载请注明原文地址: https://www.6miu.com/read-1150088.html

最新回复(0)