剑指offer——42最小的K个数
2024-10-07 18:11:31
题目描述
输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。
题解:
原以为书中会有好方法,想不到还是排序和STL这两种方法。
原以为书中会有好方法,想不到还是排序和STL这两种方法。
class Solution {
public:
vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
if (input.size() < k)return {};
set<int>res;
for (auto a : input)
{
if (res.size() < k)
res.insert(a);
else if(a<*(--res.end()))
{
res.erase(--res.end());
res.insert(a);
}
}
vector<int>v;
v.assign(res.begin(), res.end());
return v;
}
};
最新文章
- Configure Visual Studio 2013 for debugging .NET framework
- 解决WCF的service端无法使用泛型的问题
- Android IOS WebRTC 音视频开发总结(七一)-- H265/H264有何不同
- [整理]Ajax Post请求下的Form Data和Request Payload
- paper 9:SVM番外篇:支持向量机系列六:Duality —— 关于 dual 问题推导的一些补充理论。
- PLSQL_性能优化系列10_Oracle Array数据组优化
- SQL Server 高性能写入的一些总结
- 省市县 三级 四级联动Javascript JQ 插件PCASClass.js
- matlab常用小函数(二)
- 【背包型动态规划】灵魂分流药剂(soultap) 解题报告
- 实战 Spring MVC接入支付宝即时到账 (部分代码)
- shell练习--批量创建账号
- 关于JS脚本语言的基础语法
- 【LATEX】个人版latex论文模板
- Windows2008安装组件命令行工具ServerManagerCmd用法介绍
- tcpdump 交叉编译
- CF1131F Asya And Kittens(Kruskal重构树,启发式合并)
- Windows7上完全卸载Oracle 12c操作步骤
- fiddler对Iphone6s进行抓包教程
- ABAP 面向对象事件处理