尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

二刷hot100-215.数组中第k个最大元素

发布时间:2026/9/24 0:13:10

资讯中心
01
ARTICLE

二刷hot100-215.数组中第k个最大元素

二刷hot100-215.数组中第k个最大元素
有点复杂随机找一个基准索引令该元素的右边均小于他左边均大于他在这个操作的过程中也有很多细节是先把基准元素放到了此次操作范围的最后边然后int p nums[r]; int i r; while(l r){ while(l r nums[l] p){ l 1; } while(l r nums[r] p){ r - 1; } if(l r){ switch0(nums,l,r); } }之后交换基准元素和l对应元素class Solution { public int findKthLargest(int[] nums, int k) { return quicksort(nums,0,nums.length - 1,k); } public int quicksort(int[] nums,int l,int r,int k){ int index randomselect(nums,l,r); if(index k - 1){ return nums[index]; }else if(index k - 1){ return quicksort(nums,l,index - 1,k); }else{ return quicksort(nums,index 1,r,k); } } public int randomselect(int[] nums,int l,int r){ int index (int)(Math.random() * (r - l 1)) l; swap(nums,r,index); return f(nums,l,r); } public void swap(int[] nums,int r,int index){ int temp nums[r]; nums[r] nums[index]; nums[index] temp; } public int f(int[] nums,int l,int r){ int i r; while(l r){ while(l r nums[l] nums[i]){ l; } while(l r nums[r] nums[i]){ r--; } if(l r){ swap(nums,l,r); } } swap(nums,l,i); return l; } }
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。