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

来源:互联网 发布:淘宝网争议处理规则 编辑:程序博客网 时间:2024/05/22 01:48
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;    }}
原创粉丝点击