0
点赞
收藏
分享

微信扫一扫

LEEDCODE 159库存管理3

pipu 2023-11-14 阅读 65
c++算法

在这里插入图片描述

class Solution {
public:
    vector<int> inventoryManagement(vector<int>& stock, int cnt) {
        // quicksort
        int left = 0;
        int right = stock.size() - 1;
        quicksort(left, right, stock, cnt);

        vector<int> a;
        for(int i = 0; i<cnt; i++)
        {
            a.push_back(stock[i]);
        }
        return a;
    }
    void quicksort(int left, int right, vector<int>& stock, int cnt) {
        if( left >= right)
            return;
        int start = left;
        int end = right;
        int p = stock[left];
        while(left < right)
        {
            while(stock[right] >= p && left < right)
            {
                right -= 1;
            }
            if(stock[right] < p)
            {
                stock[left++] = stock[right];
            }
            while(stock[left] <= p && left < right)
            {
                left += 1;
            }
            if(stock[left] > p)
            {
                stock[right--] = stock[left];
            }
        }
        stock[left] = p;
        quicksort(start, left-1,stock,cnt);
        if(left<cnt-1)
        {
            quicksort(left+1,end,stock,cnt);
        }
    }
};




在这里插入图片描述

在这里插入图片描述

举报

相关推荐

0 条评论