深海中的STL—nth_element
时间:2022-05-08
本文章向大家介绍深海中的STL—nth_element,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
如果让你求区间第k大,你会怎么做呢?
主席树?确实是个不错的选择(不过像我这种垃圾还是乖乖打暴力吧)
在c++的stl库中,提供了nth_element
这样一个函数
它的用法是nth_element(a+l,a+k,a+r)
这样它会使a这个数组中区间(l,r)内的第k大的元素处在第k个位置上(相对位置)
但是它并不保证其他元素有序! 不过根据网友的实验,貌似在vs上是有序的,不过在dev中是无序的
时间复杂度:O(n)
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
static int a[15]={0,1,2,5,7,3,4,1};
for(int i=1;i<=8;i++) printf("%d ",a[i]);printf("n");
nth_element(a,a+4,a+8);
for(int i=1;i<=8;i++) printf("%d ",a[i]);printf("n");
return 0;
}
输出结果
- 解决Scrollview 嵌套recyclerview不能显示,高度不正常的问题
- 极客DIY:教你做一个简单的“太阳能”移动电源
- android RecycleView Adapter简单封装
- java入门
- Ray:AI的分布式系统
- hello Kotlin
- 小学生都学Python了,你还不知道怎么开始
- java实现最基础的socket网络通信
- struts的声明式异常处理 demo
- npm管理工具介绍
- 对windows密码抓取神器mimikatz的逆向分析
- Keras中神经网络模型的5阶段生命周期
- java的断言(assert)
- Android studio中Rendering Problems不能可视化操作的解决办法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- OpenGL ES for Android 绘制立方体
- 服务化最佳实践
- OpenGL ES for Android 深度测试
- OpenGL ES for Android 绘制旋转的地球
- [Hei.Captcha] Asp.Net Core 跨平台图形验证码实现
- Asp.Net Core 3.1 获取不到Post、Put请求的内容 System.NotSupportedException Specified method is not supported
- OpenGL ES for Android 播放视频
- Centos 7 在线安装 离线安装 最新 Docker-compose 的正确姿势 实践笔记
- OpenGL ES for Android 视频缩放、旋转、平移
- OpenGL ES for Android 相机预览
- OpenGL ES for Android 相机预览适配不同分辨率的手机
- Flutter Widgets 之 Container
- Flutter Widgets 之 Row和Column
- Flutter Widgets 之 SafeArea
- Flutter Widgets 之 Wrap