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;
        }
    }
}
相关推荐
优质酸酸乳12 小时前
力扣100题之21合并两个有序链表
算法·leetcode·链表
旖旎夜光12 小时前
LeetCode 137 : 只出现一次的数字 II(位运算) —— 题解
c++·笔记·学习·算法·leetcode·力控
王老师青少年编程12 小时前
2026年9月GESP真题及题解(C++七级):必经之路
c++·题解·真题·gesp·七级·2026年9月·必经之路
心中有你021412 小时前
C语言 二叉搜索树(BST)超详细完整实现(插入+查找+删除+三种遍历+内存释放)
c语言
神仙别闹13 小时前
基于C语言实现 TINY+ 编译器
c语言·开发语言·数据库
yi01113 小时前
LeetCode 134 加油站:从 双循环暴力 演变到 贪心
linux·算法·leetcode
yi01114 小时前
DAY 14: LeetCode 394. 字符串解码|递归和栈到底怎么处理嵌套?
数据结构·笔记·python·算法·leetcode
共享家952714 小时前
C语言-408
c语言·开发语言
P.D.Wei14 小时前
[Leetcode 1614] 括号的最大嵌套深度
算法·leetcode·职场和发展
blxr_15 小时前
力扣hot100寻找重复数https://leetcode.cn/problems/find-the-duplicate-number/
算法·leetcode·职场和发展