LeetCode-40:kの最小数

一つ、タイトル説明

ここに画像を挿入説明

第二に、問題解決のためのアイデア

確かに最初の並べ替え、我々はクイックソートやヒープソートを使用して、というようにすることができ、または単にSTLのsort機能

/*
class Solution {
public:
    vector<int> getLeastNumbers(vector<int>& arr, int k) {
        priority_queue<int, vector<int>, greater<int>> q;
        auto len = arr.size();
        for(auto i = 0; i < len; i++)
            q.push(arr[i]);
        vector<int> sln;
        for(int i = 0; i < k; i++){
            sln.push_back(q.top());
            q.pop();
        }
        return sln;
    }
};
*/
class Solution {
public:
    vector<int> getLeastNumbers(vector<int>& arr, int k) {
        sort(arr.begin(), arr.end());
        vector<int> sln;
        for(int i = 0; i < k; i++)
            sln.push_back(arr[i]);
        return sln;
    }
};

第三に、営業成績

上記のsortソートソート以下、ヒープ
ここに画像を挿入説明

公開された30元の記事 ウォンの賞賛3 ビュー821

おすすめ

転載: blog.csdn.net/weixin_44587168/article/details/105290995