C++——寻找第k大的数

article/2025/9/30 15:07:56

给出一个数组,找出数组的第k大的数:基于快速排序的思路,每次快排后,基准的左边都是比其小的数,右边都是比其大的数,一次快排结束后,若基准所处的位置正好是第k大(即基准右边有k-1个数据),则返回基准值。若基准所在的位置右边的数据小于k-1个,说明第k大的数在基准左边序列中,则我们需要对左边的数据进行快排,并找到第k-big-1大的数据;若基准所在的位置右边的数据大于k-1个,说明第k大的数在基准右边序列中,则对右边的序列进行快排并找到第k大的数。

class Solution {
public:int findKth(vector<int> a, int n, int K) {// write code herereturn quickFind(a, 0, n-1,K);}int quickFind(vector<int>& arr,int left,int right,int k){int i=left,j=right,key=arr[left];while(i<j){while(i<j&&arr[j]>=key) j--;arr[i]=arr[j];while(i<j&&arr[i]<=key) i++;arr[j]=arr[i];}arr[i]=key;int big=right-i;if(big==k-1) return key;else if(big<k-1) return quickFind(arr, left, i-1,k-big-1);elsereturn quickFind(arr,i+1, right,k);}
};

 


http://chatgpt.dhexx.cn/article/rxmRDLrW.shtml

相关文章

面试题:从n个数中找出第K大的数

参考https://blog.csdn.net/orangefly0214/article/details/84997668的思路 从有n个元素的乱序数组中找出第k大的元素 方法1&#xff1a;基于冒泡排序和简单选择排序&#xff0c;时间复杂度o(n*k) 我们知道&#xff0c;在冒泡排序和简单选择排序中&#xff0c;最外层的循环每…

在N个数中查找第K大的数字(Top K问题)

在N个乱序数字中查找第k大的数字&#xff0c;时间复杂度可以减小至 O(N*logN)O(N)O(1)O(2) 答案&#xff1a;B 所谓“第&#xff08;前&#xff09;k大数问题”指的是在长度为n(n>k)的乱序数组中S找出从大到小顺序的第&#xff08;前&#xff09;k个数的问题。 注意&…

idea控制台乱码解决方法

一、问题情况&#xff1a; IntelliJ IDEA 控制台输出中文乱码部分如图所示&#xff1a; 二、解决方法&#xff1a; 1.打开tomcat配置页面&#xff0c;Edit Configurations。 2.选择项目部署的tomcat&#xff0c;在配置项VM options文本框中输入-Dfile.encodingUTF-8,点击Appl…

idea 控制台乱码问题的问题

工程(环境window10&#xff0c;gradle-6.8.3版本&#xff0c;编辑器IntelliJ IDEA 2019.3.4&#xff09; 一&#xff09;问题表现编译build的时候控制台带中文信息的会乱码 1、 找到Help->Editor Custom VM Options 2、 添加 -Dfile.encodingUTF-8 该设置是针对编辑器级别…

IDEA中控制台乱码的解决方式

1.在设置中的“文件编码”中将3个位置设为UTF-8&#xff0c;注&#xff1a;此处设置与控制台乱码无关&#xff0c;3处可均设为UTF-8或均设为系统默认值。 2.在Tomcat的“编辑配置”中&#xff0c;将VM options设为-Dfile.encodingGBK(与第三步类似&#xff0c;默认即为GBK)。…

IDEA控制台乱码终极解决办法

【关于IDEA中文乱码的终极解决方法】 查了很多资料&#xff0c;大多数博主都是修改四个地方&#xff1a;&#xff08;前四步&#xff09;如果前四步还是不行&#xff0c;可以看五、六步。第一步&#xff1a;idea 安装目录下/bin/idea.exe.vmoptions 和/bin/idea64.exe.vmoption…

IDEA控制台乱码解决

解决办法&#xff1a; 打开Intellij的安装的bin目录&#xff08;D:\Program Files\JetBrains\IntelliJ IDEA 14.0\bin &#xff09;&#xff0c;找到上图的两个文件&#xff08;根据你的系统是32位或64位选择其中一个配置文件&#xff09;&#xff0c;在配置文件中添加&#xf…

多种方法帮你解决tomcat项目部署,idea控制台乱码问题

解决在使用Tomcat过程中idea控制台出现的乱码问题 以下将介绍几种方法&#xff08;都是小编亲测实用的方法&#xff09;&#xff0c;尝试并寻找适合自己的方法即可 由于我已经处理过了乱码问题&#xff0c;我就重新配置一下 &#xff08;我有效解决的方案是把-Dfile.encoding…

idea 控制台乱码

1.我原来的修改idea的控制台乱码是 在ideasettings--Editor--File encodings修改为UTF-8 2.tomcat 中修改的conf logging.properties配置文件 由UTF-8修改为GBK 以上是我之前的修改.最近有个项目这样配置之后在项目运行的时候.有个页面要获取一个json字段.但是代码中有乱码的…

IDEA控制台乱码问题,原因解决方式,解决不了算我输

IDEA 控制台乱码问题 文章目录 IDEA 控制台乱码问题为了节省大家时间, 直接展示下我的编码配置方案我的编码配置原则我的编码配置 另外说一下几个重要但是和乱码无关的配置乱码原因解决方式我为什么推荐控制台使用 GBK我的编码设置思想第一种解决方案的弊端end 附加技巧如何找出…

解决idea控制台乱码

控制台乱码如下&#xff1a; 解决方案一&#xff1a;修改当前 Web 项目 Tomcat Server 的虚拟机输出选项 上方导航栏“Run→Edit Configurations…”进入配置页面&#xff0c;修改当前 Web 项目 Tomcat Server 的虚拟机输出选项 VM options 添加 -Dfile.encodingUTF-8 。重启&…

IDEA控制台乱码(已解决)

先来说说我遇到的问题&#xff0c;用IDEA打开项目首先可以保证编辑器内不会乱码&#xff0c;启动Tomcat后控制台出现乱码   我在网上找了很多方式都没有解决&#xff0c;大多数的方式由以下几种&#xff1a; 进入File->Settings->Editor->File Encodings 将右侧的所…

详细解决tomcat乱码 IDEA控制台乱码

1、启动Tomcat时打印出一大堆看不懂的文字 如下图&#xff1a; 原因&#xff1a;产生乱码的根本原因就是编码和解码不一致 解决办法&#xff1a;将打开tomcat的安装目录conf下的logging.properties文件&#xff0c;将java.util.logging.ConsoleHandler.encoding UTF-8 修改为…

MyBatis、IDEA控制台乱码

控制台乱码&#xff1a; 解决方法 在Maven模块的pom.xml中添加 <properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.buil…

【IDEA乱码解决方案】IDEA控制台乱码解决方案收集

乱码实例 如图&#xff1a; 我的解决方案 在“帮助”——“编辑自定义VM选项”中&#xff0c;最后一行加上代码&#xff1a; -Dfile.encodingUTF-8然后重启IDEA。 其他方案一&#xff1a;修改IDEA安装目录下的idea64.exe.vmoptions IDEA快捷方式右键->属性->打开文件所…

idea控制台乱码问题

1.控制台乱码 控制台tomcat启动信息乱码解决&#xff08;红色字体&#xff09; 1 在本地 tomcat 的配置文件中找到 logging.properties 文件设置日志输出的编码为 UTF-8 追加的配置信息为&#xff1a; java.util.logging.ConsoleHandler.encoding UTF-8 2 在IDEA中配置tomcat的…

解决IDEA控制台中文乱码问题(Tomcat、动态网页项目)

博主在使用idea的创建动态网页的时候&#xff0c;遇到了控制台中文乱码问题&#xff0c;在网上参考了多种解决方案之后&#xff0c;终于将问题成功解决。现在将自己遇到问题的情况和解决问题的方法总结如下&#xff1a; Idea控制台中文乱码问题通常有以下两种情况&#xff08;…

idea控制台中文乱码的解决方法(最后一种亲测有效)

idea控制台中文乱码的解决方法&#xff08;三种&#xff0c;亲测有效&#xff09; 问题情况&#xff1a; IntelliJ IDEA 控制台输出中文乱码部分如图所示&#xff1a; 解决方法&#xff1a; 方法一&#xff1a; 1.打开tomcat配置页面&#xff0c;Edit Configurations。 2…

解决IDEA控制台输出中文乱码问题

解决方法一&#xff1a; 1.打开tomcat配置页面&#xff0c;Edit Configurations。 2.在配置项VM options文本框中输入-Dfile.encodingUTF-8&#xff0c; 添加一条JAVA_TOOL_OPTIONS&#xff0c; 点击Apply&#xff0c;OK即可。 3.尝试重启Tomcat。 解决方法二&#xff1a…

解决 IDEA 控制台中文乱码(三种方法)

1、中文乱码原因 IDEA的下方log输出的部分的编码是GBK的&#xff0c;而Tomcat默认log输出是UTF-8编码的&#xff0c;采用了两种不同的编码方式就是乱码 2、Tomcat乱码解决 2-1&#xff09; 右键打开IDEA文件位置&#xff0c;打开下图选中文件 为其添加下图选中代码 -Dfile.e…