图解快速排序+代码

图解

代码

javascript 复制代码
let quickSort = function(arr, left, right){
    if(left > right){
      return;
    }
    let key = arr[left];
    let i = left;
    let j = right;

    while(i < j){
      while(i<j && arr[j] >= key){
        j--;
      }
      while(i<j && arr[i] <= key){
        i++;
      }
      if(i<j){
        let tmp = arr[i];
        arr[i] = arr[j];
        arr[j] = tmp;
      }
    }
    // 在重合点 将基准值交换
    arr[left] = arr[i];
    arr[i] = key;
    quickSort(arr, left, i-1);
    quickSort(arr, i+1, right);
  }
相关推荐
代码游侠几秒前
学习笔记——线程控制 - 互斥与同步
linux·运维·笔记·学习·算法
yaoh.wang4 分钟前
力扣(LeetCode) 66: 加一 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
聆风吟º10 分钟前
【数据结构手札】顺序表实战指南(一):线性表定义 | 顺序表定义
数据结构·顺序表·线性表
wanderist.26 分钟前
2025年蓝桥杯省赛C++大学A组
c++·算法·蓝桥杯
啊董dong37 分钟前
noi-2025年12月16号作业
数据结构·c++·算法·noi
white-persist40 分钟前
【攻防世界】reverse | simple-check-100 详细题解 WP
c语言·开发语言·汇编·数据结构·c++·python·算法
长安er1 小时前
LeetCode 01 背包 & 完全背包 题型总结
数据结构·算法·leetcode·动态规划·背包问题
小南家的青蛙1 小时前
LeetCode第2658题 - 网格图中鱼的最大数目
算法·leetcode·职场和发展
ZHang......1 小时前
LeetCode 1114. 按序打印
java·开发语言·算法
松涛和鸣1 小时前
DAY33 Linux Thread Synchronization and Mutual Exclusion
linux·运维·服务器·前端·数据结构·哈希算法