nth_element详解
nth_element()是c++的STL库中的函数,作用是将数组中第k小的整数放在区间第k个位置
比如a[6]={2,5,6,4,7,8},使用nth_element(a,a+3,a+6)后,区间中第四个数,也就是a[3],会被放入数组中第三小的数,也就是6。
使用一次nth_element()的时间复杂度为O(n)O(n)O(n)
code
#include<bits/stdc++.h>
using namespace std;
int a[6]={2,5,6,4,7,8};
int main()
{nth_element(a,a+3,a+6);for(int i=0;i<6;i++){printf("%d ",a[i]);}return 0;
}
输出:
5 2 4 6 7 8
如果a数组不从0开始,则需做一些调整
code
#include<bits/stdc++.h>
using namespace std;
int n,k,b[15];
int main()
{scanf("%d%d",&n,&k);for(int i=1;i<=n;i++){scanf("%d",&b[i]);}nth_element(b+1,b+k,b+n+1);for(int i=1;i<=n;i++){printf("%d ",b[i]);}printf("\n");printf("%d",b[k]);return 0;
}
输入:
8 4
7 5 3 8 4 6 2 9
输出:
3 2 4 5 8 6 7 9
5
nth_element详解相关推荐
- 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)
首先,Git已经并不只是GitHub,而是所有基于Git的平台,只要在你的电脑上面下载了Git,你就可以通过Git去管理"基于Git的平台"上的代码,常用的平台有GitHub.Gi ...
- JVM年轻代,老年代,永久代详解
秉承不重复造轮子的原则,查看印象笔记分享连接↓↓↓↓ 传送门:JVM年轻代,老年代,永久代详解 速读摘要 最近被问到了这个问题,解释的不是很清晰,有一些概念略微模糊,在此进行整理和记录,分享给大家.在 ...
- docker常用命令详解
docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: Doc ...
- 通俗易懂word2vec详解词嵌入-深度学习
https://blog.csdn.net/just_so_so_fnc/article/details/103304995 skip-gram 原理没看完 https://blog.csdn.net ...
- 深度学习优化函数详解(5)-- Nesterov accelerated gradient (NAG) 优化算法
深度学习优化函数详解系列目录 深度学习优化函数详解(0)– 线性回归问题 深度学习优化函数详解(1)– Gradient Descent 梯度下降法 深度学习优化函数详解(2)– SGD 随机梯度下降 ...
- CUDA之nvidia-smi命令详解---gpu
nvidia-smi是用来查看GPU使用情况的.我常用这个命令判断哪几块GPU空闲,但是最近的GPU使用状态让我很困惑,于是把nvidia-smi命令显示的GPU使用表中各个内容的具体含义解释一下. ...
- Bert代码详解(一)重点详细
这是bert的pytorch版本(与tensorflow一样的,这个更简单些,这个看懂了,tf也能看懂),地址:https://github.com/huggingface/pytorch-pretr ...
- CRF(条件随机场)与Viterbi(维特比)算法原理详解
摘自:https://mp.weixin.qq.com/s/GXbFxlExDtjtQe-OPwfokA https://www.cnblogs.com/zhibei/p/9391014.html C ...
- pytorch nn.LSTM()参数详解
输入数据格式: input(seq_len, batch, input_size) h0(num_layers * num_directions, batch, hidden_size) c0(num ...
最新文章
- 畅捷通携手易后台,专注小微企业财税服务
- maven scope含义的说明
- java springmvc mybatis mysql
- git 使用攻略小记
- HihoCoder - 1441 后缀自动机一·基本概念(模拟,后缀自动机入门好题)
- adf时间作用域_ADF:在任务流终结器中支持bean作用域
- vim显示行号、多行复制和删除
- ARM平板电脑移植Linux,iperf ARM移植
- 如何在Timeline中创建自定义轨道?
- java string equal 与==的区别
- Apache Tomcat 再爆严重安全漏洞
- 商业智能BI系统对企业有什么好处
- 亿乐社区最新版开源无后源码
- svn的安装出现报错问题解决办法
- Quartus-II入门实战
- 上海网站备案人工服务器,上海网站备案中心
- matlab 转换 地平赤道坐标系,赤道坐标系变为地平坐标系
- java蛮力法背包问题_蛮力法、动态规划法 求解01背包问题
- archlinux什么桌面好_ArchLinux搭建高效便捷的平铺式桌面
- google map 地理编码API的两种方式