zoukankan      html  css  js  c++  java
  • LeetCode215-kth-largest-element-in-an-array

    第k 大的元素

    这题用递归出错了,划不来,一点都不好debug, 最重要的是抽线能力

    class Solution {
        public int findKthLargest(int[] nums, int k) {
            
            mergeSort(nums, 0, nums.length-1);
            int count = nums.length;
            return nums[count-k];
            
        }
          static public void mergeSort(int[] num, int left, int right){
            if(left<right) {
                int mid = (left + right) / 2;
                mergeSort(num,left,mid);
                mergeSort(num, mid + 1, right);
                mergeSort(num, left, mid, right);
            }
    
        }
    
        static public void mergeSort(int[] num, int left, int mid, int right){
            int[] sort = new int[num.length];
    
            int counter = left;
            int i = left;
            int j = mid+1;
            while(i <= mid && j <= right){
    
                if(num[i]>=num[j]){
                    sort[counter] = num[j];
                    j++;
                }else{
                    sort[counter] = num[i];
                    i++;
                }
                counter++;
            }
            while(i <= mid){
                sort[counter++] = num[i++];
            }
            while(j <= right){
                sort[counter++] = num[j++];
            }
    
            for(int k=left;k<=right;k++){
                num[k] = sort[k];
            }
    
        }
    
    }
    

      

  • 相关阅读:
    ajax的post请求
    ajax的get请求
    浏览器缓存机制
    php和cookie
    php表单(2)
    php和表单(1)
    枚举for/in
    .Matrix-Beta冲刺的汇总博客
    .Matrix汇总博客
    小黄衫获得的感想
  • 原文地址:https://www.cnblogs.com/Jomini/p/11788791.html
Copyright © 2011-2022 走看看