牛客網——劍指offer 最小的K個數

``問題:輸入n個整數,找出其中最小的K個數。例如輸入4,5,1,6,2,7,3,8這8個數字,則最小的4個數字是1,2,3,4,。

冒泡排序k次,得到最小的k個數

vector<int> GetLeastNumbers_Solution(vector<int> input, int k) {
        vector<int> vec;
        if(k > input.size()) return vec;
        
        for(int i=0; i<k; i++)
        {
            for(int j=1; j<input.size()-i; j++)
            {
                if(input[j] > input[j-1])
                {
                    int flag;
                    flag = input[j];
                    input[j] = input[j-1];
                    input[j-1] = flag;
                }
            }
            vec.push_back(input[input.size()-i-1]);
        }
        return vec;
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章