当前位置: 首页 > news >正文

快速排序板子

好多年了,竟然没忘,蓝书上的,之后数据结构书又改一了版

    void quick_sort(vector<int>& nums, const int& k, int x, int y) {if (x >= y) return;int p = x, q = y;int stash = nums[x];while(p < q) {while(p < q && nums[q] >= stash) q--;while(p < q && nums[p] <= stash) p++;if (p < q) {swap(nums[p], nums[q]);}}swap(nums[x], nums[q]);quick_sort(nums, k, x, p - 1);quick_sort(nums, k, p + 1, y);}

快排找第k大

class Solution {
public:void quick_sort(vector<int>& nums, const int& k, int x, int y) {if (x >= y) return;int p = x, q = y;int stash = nums[x];while(p < q) {while(p < q && nums[q] >= stash) q--;while(p < q && nums[p] <= stash) p++;if (p < q) {swap(nums[p], nums[q]);}}swap(nums[x], nums[q]);if (p == nums.size() - k) {return;}else if (p > nums.size() - k) {quick_sort(nums, k, x, p - 1);} else {quick_sort(nums, k, p + 1, y);}}int findKthLargest(vector<int>& nums, int k) {quick_sort(nums, k, 0, nums.size() - 1);return nums[nums.size() - k];}
};

 

http://www.rkmt.cn/news/62038.html

相关文章:

  • CF1774F2
  • PostgreSQL权限管理实践
  • 预编译命令
  • 本地环境自建的es重启,http和https访问es,nested数据类型及设置es别名
  • 迈向人机共育的文明语法:AI元人文理论体系深度阐释——内观照叙事模型
  • Intellij扩展列表
  • 251126好好学习 天天向上
  • 干扰素信号通路:从JAK-STAT到科研应用
  • 2025年11月室外木塑地板厂家,共挤木塑地板厂家,wpc木塑地板厂家品牌推荐:市政工程合作优选企业
  • ABC396 VP总结
  • Zelda
  • Day 28 类的定义和手段
  • SetSkeletalMesh优化问题
  • NOIP 模板大赛(没写完)
  • Day25CSS精灵
  • 11/26
  • 关于生育问题的初步看法
  • 游戏立项games-stats,查询游戏tag的销量,以卡牌游戏举例
  • 2025年11月不锈钢砝码,铸铁砝码,定制砝码厂家推荐,实力品牌深度解析采购无忧之选!
  • 五分钟教你学会MarkDown语法 - echo
  • Linux命令行与Shell脚本编程大全笔记
  • Temperature、Top P 的原理以及两者区别
  • 宇树 Qmini 双足机器人训练个人经验总结
  • 实用指南:文档搜索引擎搜索模块:从需求拆解到落地的全流程实现指南
  • 一篇文章详解Kafka Broker - 教程
  • Python store class list data in excel file via pandas
  • 详细介绍:打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第十天)
  • AI写论文不用愁!9个AI工具为你保驾护航!
  • 谁告你只有中元节能见祖宗了?
  • [论文笔记] Boomerang: Demand-Driven Flow- and Context-Sensitive Pointer Analysis for Java