剑指 Offer II 076. 数组中的第 k 大的数字
题目
给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。
请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。
示例
输入: [3,2,1,5,6,4] 和 k = 2
输出: 5
输入: [3,2,3,1,2,4,5,5,6] 和 k = 4
输出: 4
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/xx4gT2
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
方法1:快速排序
Java实现
class Solution {public int findKthLargest(int[] nums, int k) {quick_sort(nums, 0, nums.length - 1);return nums[nums.length - k];}public void quick_sort(int[] nums, int l, int r) {if (l >= r) return;int i = l - 1, j = r + 1, x = nums[l + r >> 1];while (i < j) {do {i++;} while (nums[i] < x);do {j--;} while (nums[j] > x);if (i < j) {int tmp = nums[i];nums[i] = nums[j];nums[j] = tmp;}}quick_sort(nums, l, j);quick_sort(nums, j + 1, r);}
}
剑指 Offer II 076. 数组中的第 k 大的数字相关推荐
- 915. 分割数组、剑指 Offer II 076. 数组中的第 k 大的数字
LeetCode题解 1.分割数组 2.数组中的第 k 大的数字 1.分割数组 题目描述: ➡️挑战链接⬅️ 分析: 首先题目叙述的很简单: 要求呢 1.左右两个区间元素必须连续 2.左右区间必须都有 ...
- 剑指 Offer II 028. 数组中出现次数超过一半的数字
注:本文的代码实现使用的是 JS(JavaScript),为前端中想使用JS练习算法和数据结构的小伙伴提供解题思路. 描述 给一个长度为 n 的数组,数组中有一个数字出现的次数超过数组长度的一半,请找 ...
- 【剑指offer】登峰造极--数组中只出现一次的数字
题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 思路: 位运算,异或思路,反正我是想不到-看了题解和评论才弄懂是怎么一回事. 按位与&, ...
- 剑指 Offer II 014. 字符串中的变位词
剑指 Offer II 014. 字符串中的变位词 题目 示例 解答 题目来源为leetcode 题目 给定两个字符串s1和s2,写一个函数来判断s2是否包含s1的某个变位词. 换句话说,第一个字符串 ...
- 【LeetCode】剑指 Offer 54. 二叉搜索树的第k大节点
[LeetCode]剑指 Offer 54. 二叉搜索树的第k大节点 文章目录 [LeetCode]剑指 Offer 54. 二叉搜索树的第k大节点 一.中序遍历(提前返回) 一.中序遍历(提前返回) ...
- 第k大的数python代码_Python实现查找数组中任意第k大的数字算法示例
本文实例讲述了Python实现查找数组中任意第k大的数字算法.分享给大家供大家参考,具体如下: 模仿partion方法,当high=low小于k的时候,在后半部分搜索,当high=low大于k的时候, ...
- 【剑指offer】_12 数组中的逆序对
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P%1000 ...
- 对分查找的最多次数_「剑指offer题解」数组中出现次数超过一半的数字
关注我--个人公众号:后端技术漫谈 我目前是一名后端开发工程师.主要关注后端开发,数据安全,网络爬虫,物联网,边缘计算等方向. 原创博客主要内容 Java知识点复习全手册 Leetcode算法题解析 ...
- 剑指offer系列-03.数组中的重复数字
剑指offer系列第03题.数组中的重复数字 找出数组中重复的数字.在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内. 数组中某些数字是重复的,但不知道有几个数字重复了,也不 ...
最新文章
- 文件系统管理 之 Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍...
- UI组件-UISlider
- 【转】维护工厂库存的一般设置
- python integer_【Python】string/list/integer常用函数总结
- java继承类型转换_#java 一个简单的例子理解java继承、成员函数重写、类型转换...
- html5输入框自动放大镜,JS 仿支付宝input输入显示数字放大镜
- Android—关于通知NotificationManager操作
- [vue] 说下$attrs和$listeners的使用场景
- CVPR 2022 中科院、腾讯提出LAS-AT,利用“可学习攻击策略”进行“对抗训练”
- scala 基础 ——关键字与特殊符号
- 机床电气课程设计(自己总结)
- win7如何设置通电自动开机_WIN7自动开机怎么设置?
- 声纹识别与声源定位(一)
- VBA小模板:一个奖励放回的普通抽奖用VBA怎么写?
- UCSC寻找基因位置并用IGV画出基因转录示意图
- 《教育学原理》知识框架整理
- 路由 IS-IS NSR
- 基金投资从入门到精通
- 程序员养娃记:撸一手好代码,却带不好一个娃?!
- 通过window.open下载pdf或直接打开文件