《剑指Offer》 最小的K个数

来源:互联网 发布:javascript序列化表单 编辑:程序博客网 时间:2024/06/05 18:14

题目描述:
输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。

思路:
取input的长度,定义用来返回结果的vector的result。如果k比input的长度大,直接返回空vector,将input排序,取前k个放到result里。

代码:

class Solution {public:    vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {        int size=input.size();//取input的长度        vector<int> result;//用来返回结果的vector        if(k>size){//如果k比input的长度大,直接返回空vector            return result;        }        sort(input.begin(),input.end());//将input排序        for(int i=0;i<k;++i){//取前k个放到result里            result.push_back(input[i]);        }        return result;    }};

输出结果: 运行时间: <1 ms 占用内存:8552K 状态:答案正确

0 0
原创粉丝点击