最小的k个数
来源:互联网 发布:用别人淘宝店铺引流量 编辑:程序博客网 时间:2024/05/21 08:43
题目描述
输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。
先设置一个数组将新数组存放k个数,然后排序,最大值与原数剩余的比较,大了 删除插入新的,小了不变,还可以选择用multiset<int,greater <int>>这个是自动排序的class Solution {
public:vector<int> GetLeastNumbers_Solution(vector<int> input, int k)
{
vector<int> ans;
int len=input.size();
if(k<1||len<k) return ans;
for(int i=0;i<len;i++)
{
if(ans.size()<k)
{
ans.push_back(input[i]);
if(ans.size()==k)
sort(ans.begin(),ans.end());
}
else{
if(ans[k-1]>input[i])
{
ans[k-1]=input[i];
sort(ans.begin(),ans.end());
}
}
}
return ans;
}
};
0 0
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的k个数
- 最小的K个数
- 最小的k个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的K个数
- 最小的k个数
- 最小的k个数
- 进程与线程一个简单的比喻
- 认识HTML
- solr5.X版本的拼音搜索
- 微信客服我是这样集中管理的
- King
- 最小的k个数
- java.lang.Object总结
- 【转】更详细的 有关session和cookie介绍及应用的讲解
- Java中数组 枚举 内部类
- rsync 同步centos源
- golang学习笔记
- MySql数据库基本语句
- Dos命令查看端口占用及关闭进程
- android 各Display转化(一)