剑指offer40

剑指offer40:最小的K个数

题目描述

输入n个整数,找出其中最小的K个数。
例如输入4,5,1,6,2,7,3,88个数字,
则最小的4个数字是1,2,3,4,

解法一:基于sort排序的方法

class Solution {
public:
    vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
        sort(input.begin(), input.end());
        vector<int> a;
        for (int i = 0; i<k; i++)
            a.push_back(input[i]);
        if (k>input.size())
            return {};
        else
            return a;
    }
};

   转载规则


《剑指offer40》 赵小亮 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
剑指offer42 剑指offer42
剑指offer42:和为S的两个数字 题目描述输入一个递增排序的数组和一个数字S,在数组中查找两个数, 使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 输出描述: 对应每个测试案例,输出两个数,小的先输出。 解
2020-04-26
下一篇 
Leetcode747 Leetcode747
Leetcode747:至少是其他数字两倍的最大数 题目描述在一个给定的数组nums中,总是存在一个最大元素 。 查找数组中的最大元素是否至少是数组中每个其他数字的两倍。 如果是,则返回最大元素的索引,否则返回-1。 示例 1: 输入:
2020-04-24
  目录