最小的k个数
来源:互联网 发布:麦夸特算法 编辑:程序博客网 时间:2024/06/10 03:20
解法一:
若输入数组可以修改,可以基于快速排序的思想找到数组第k个大小的数的位置,返回[0~k-1]位置的数即可。
解法二:
typedef multiset<int, greater<int>> intSet;typedef multiset<int, greater<int>>::iterator iterSet;void GetLeastKNumbers(const vector<int>& data, intSet& LeastKNumbers, int k){ LeastKNumbers.clear(); if (data.size() < k || k <= 0) return; vector<int>::const_iterator iter = data.begin(); for (; iter != data.end(); iter++) { if (LeastKNumbers.size() < k) LeastKNumbers.insert(*iter); else { iterSet iterLargest = LeastKNumbers.begin(); if (*iter < *(LeastKNumbers.begin())) { LeastKNumbers.erase(iterLargest); LeastKNumbers.insert(iter); } } }}
0 0
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的K个数
- 最小的k个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的k个数
- 最小的k个数
- 一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。它在第N次落地时反弹多高?共经过多少米?保留两位小数
- Windows批处理 - 获取目录结构
- Hadoop HA高可用集群搭建(2.7.2)
- Android Studio 2.2 ndk开发环境 gradle配置
- OPENCV资料总结
- 最小的k个数
- ShareSDK 分享
- 【操作系统-Windows】在文件右键菜单 发送 中添加自定义的目标文件夹
- 获取未来几天的日期
- 《Procedure Call Standard for the ARM® Architecture》之(5.1)
- JavaScript个人笔记:js模块化开发seajs实战拖拽
- openstack网络(neutron)模式之GRE的基本原理
- 数组的4种形式输出
- Unable to execute dex: Multiple dex files define 解决方法