小白学习[leetcode]之[排序算法]215. 数组中的第K个最大元素

题目的链接在这里:https://leetcode-cn.com/problems/kth-largest-element-in-an-array/

目录


题目大意

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。

一、示意图

小白学习[leetcode]之[排序算法]215. 数组中的第K个最大元素

二、解题思路

java实现

代码如下:

class Solution {
    public int findKthLargest(int[] nums, int k) {
        //找第k个最大的元素
        //要么直接就把数组拍完序,然后暴力找
        //或者是那种快排,然后做个count标记,到第k个就结束
        //快排的话,参数不行,那就只能是冒泡了
        //直接这边看k的值是吧
        boolean swap;
        for(int i=0;i<nums.length;i++){
            //第一层循环是循环几遍的意思 
            swap=false;
            for(int j=1;j<nums.length-i;++j){
                //从大往小排序吧
                if(nums[j]>nums[j-1]){
                    //交换一下
                    int temp=nums[j];
                    nums[j]=nums[j-1];
                    nums[j-1]=temp;
                    swap=true;
                }
            }
            if(!swap){
                break;
            }
        }
        return nums[k-1];
    }
}

小白学习[leetcode]之[排序算法]215. 数组中的第K个最大元素

上一篇:PHP 文件夹下文件重命名 把文件排序打散


下一篇:215, node 节点的 docker-ce 的安装和 flanneld 搭建 (day215)