LEETCODE LCR 159. 库存管理 III

cpp 复制代码
class Solution {
public:
    vector<int> inventoryManagement(vector<int>& stock, int cnt) {

        //快排
        int left=0;
        int right=stock.size()-1;
        cnt-=1;
        int flag;
        while(left<=right){
            flag=patition(left,right,stock);
            if(flag==cnt){
                vector<int> tmp;
                for(int i=0;i<=flag;i++)
                    tmp.push_back(stock[i]);
                return tmp;
            }
            else if(flag>cnt)
                right=flag-1;
            else
                left=flag+1;
        }
        vector<int> n1;

        return n1;
    }

    int patition(int left,int right,vector<int>& stock){
        int tmp=stock[left];
        int i=left+1;
        int j=right;
        while(i<=j){
            while(i<right && stock[i]<=tmp)
                i+=1;
            //找交换位置 tmp
            while(j>left && stock[j]>=tmp)
                j-=1;
            if(i>=j)
            {
                break;
            }
            swap(stock[i],stock[j]);
        }
        swap(stock[j],stock[left]);
        return j;
    }
};

100% 快吗?空间换的hhh

相关推荐
ULTRA??11 分钟前
插入排序算法实现(二分查找搜索版本)
c++·算法
Elias不吃糖12 分钟前
LeetCode 71:简化 Unix 路径(Simplify Path)——栈 / vector
算法·leetcode·
sheeta199815 分钟前
LeetCode 每日一题笔记 日期:2025.12.15 题目:2110.股票平滑下跌阶段的数目
笔记·算法·leetcode
智者知已应修善业7 小时前
【求中位数】2024-1-23
c语言·c++·经验分享·笔记·算法
地平线开发者8 小时前
PTQ 量化数值范围与优化
算法·自动驾驶
sali-tec8 小时前
C# 基于halcon的视觉工作流-章68 深度学习-对象检测
开发语言·算法·计算机视觉·重构·c#
测试人社区-小明8 小时前
智能弹性伸缩算法在测试环境中的实践与验证
人工智能·测试工具·算法·机器学习·金融·机器人·量子计算
罗西的思考9 小时前
【Agent】MemOS 源码笔记---(5)---记忆分类
人工智能·深度学习·算法
qq_4335545411 小时前
C++数位DP
c++·算法·图论
AshinGau12 小时前
Softmax 与 交叉熵损失
神经网络·算法