C语言 | Leetcode C语言题解之第75题颜色分类

题目:

题解:

cpp 复制代码
void swap(int *a, int *b) {
    int t = *a;
    *a = *b, *b = t;
}

void sortColors(int *nums, int numsSize) {
    int p0 = 0, p2 = numsSize - 1;
    for (int i = 0; i <= p2; ++i) {
        while (i <= p2 && nums[i] == 2) {
            swap(&nums[i], &nums[p2]);
            --p2;
        }
        if (nums[i] == 0) {
            swap(&nums[i], &nums[p0]);
            ++p0;
        }
    }
}
相关推荐
.道阻且长.10 小时前
11.LeetCode算法习题讲解--滑动窗口--将x减到0的最小操作数
算法·leetcode·职场和发展
caimouse10 小时前
ReactOS 图形系统分析(51):元文件子系统 — metafile.c
c语言·开发语言
wenyq710 小时前
LeetCode 2460. Apply Operations to an Array
算法·leetcode
青 春 记 忆11 小时前
LeetCode 142. 环形链表 II|Python 解法详解
python·leetcode·链表
小欣加油12 小时前
leetcode3069 将元素分配到两个数组中I
数据结构·c++·算法·leetcode·职场和发展
Canmag 兴隆磁性14 小时前
C 系列充磁机
c语言·开发语言·学习·永磁材料·充磁·退磁
nike0good15 小时前
April Fools Day Contest 2026 题解
算法·题解·愚人节比赛
_Narcissus_15 小时前
排序算法总结表格
c语言·数据结构·c++·笔记·算法·排序算法·总结
小雪崩15 小时前
嵌入式学习 day27:标准IO
linux·c语言·学习
从琳开始98916 小时前
优选算法——双指针(算法原理+力扣题)
算法·leetcode·职场和发展