题解 | #整数无序数组求第K大数#

整数无序数组求第K大数

http://www.nowcoder.com/practice/097ab63cffa847d89716f2ca8c23524f

import java.util.Comparator;
import java.util.PriorityQueue;
import  java.util.Scanner;

import java.util.*;
public class Main {
    static int result = 0;
    static int n;
    static int[] res;

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String temp=in.nextLine();
        String[]res= temp.trim().split(" ");
        int []arr=new int[res.length];
        for(int i=0;i<res.length;i++){
            arr[i]=Integer.parseInt(res[i].trim());
        }

        int k=arr.length-in.nextInt();

        int flag=helper(arr,0,res.length-1);
        while(flag!=k){

            if(flag>k){
                flag=helper(arr,0,flag-1);
            }
            else flag=helper(arr,flag+1,res.length-1);
        }
        System.out.println(arr[k]);

    }

    static int helper(int []arr,int left,int right){
        if(left>=right)return left;
        int left_before=left;
        int pivot=arr[left];
        while(left<right){
            while(left<right&&arr[right]>=pivot)right--;
            while(left<right&&arr[left]<=pivot)left++;
            if(left<right){
                int temp=arr[left];
                arr[left]=arr[right];
                arr[right]=temp;
            }
        }

        arr[left_before]=arr[left];
        arr[left]=pivot;

        return left;

    }
}

全部评论

相关推荐

昨天 22:05
已编辑
门头沟学院 Web前端
我是2月23号开始投简历的,投出去基本没回应,到现在只有3场面试,之前已经错过了秋招,所以想争取春招冲一冲;我想请牛友们,各位佬,看看我的简历,春招可以冲中小厂吗?2月底投出去的简历基本直接被拒,惨~目前我的进度是八股文看了很多,刷了30+算法题(弱爆啦),场景题基本没碰可能会G,常见手撕题敲了一遍(记不住,大概率G);项目很可能经不住深度拷打,还在加强学习。如果屏幕前的牛友们愿意给出建议,请畅所欲言,我一定认真阅读。毕设也欢迎各位佬直接开喷,链接:https://github.com/bignosecss/reverse-roadmap---一周过去了,更新下这周的春招的投递情况吧。这周总共约了4场面试,都是小公司;面试八股很少,没有手撕和算法,问场景和项目里的细节比较多。一家面了之后没消息了,一家二面挂,另外两家面试体验非常棒,面试官还会解答没答上的问题,总体来说反馈比2月份多不少,要简历的也多了。在招聘网站上投了很多,大多未读和已读不回,或者要了简历不回复的。邮箱、官网的投递基本没有声响,大海里扔石头,没声儿。。。感觉今年春招真的很难了,投出去没有水花,有力气没处使;不管是小厂中厂,投出去大多没回应,倒是很多外包找。不知道大问题在哪,感觉简历写的也差不多,不知道怎么继续优化了。总之每天保持学习节奏,不停的投,坚持到春招结束,相信会有机会的!
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务