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;
        }
    }
}
相关推荐
小羊在睡觉5 小时前
力扣84. 柱状图中最大的矩形
后端·算法·leetcode·golang·go
sheeta19985 小时前
LeetCode 每日一题笔记 日期:2026.05.29 题目:3300. 最小元素
笔记·leetcode
_日拱一卒5 小时前
LeetCode:994腐烂的橘子
java·数据结构·算法·leetcode·深度优先
Bluetooth7307 小时前
c语言一维数组
c语言
QiLinkOS8 小时前
【从实验室到商业战场:发明专利如何重塑科技与企业的共生生态】
大数据·c语言·数据结构·c++·人工智能·单片机·算法
小白兔奶糖ovo9 小时前
【Leetcode】231. 2的幂
linux·算法·leetcode
过期动态10 小时前
【LeetCode 热题 100】接雨水
java·数据结构·算法·leetcode·职场和发展
一抹晴空10 小时前
Keil MDK AC6 compiler编译报错,与AC5区别
c语言·arm开发·单片机
czhaii12 小时前
单片机伺服电机加减速控制子程序
c语言·单片机
qq_3331209712 小时前
C++高并发内存池的整体设计和实现思路_C 语言
java·c语言·c++