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;
        }
    }
}
相关推荐
sheeta19988 小时前
LeetCode 每日一题笔记 日期:2026.05.20 题目:2657. 找到前缀公共数组
笔记·算法·leetcode
Chen_harmony9 小时前
【习题02】打印菱形
c语言
吃着火锅x唱着歌9 小时前
LeetCode 962.最大宽度坡
算法·leetcode·职场和发展
凌波粒9 小时前
LeetCode--257. 二叉树的所有路径(二叉树)
算法·leetcode·职场和发展
阿Y加油吧10 小时前
两道数组算法题复盘:多数元素 & 颜色分类
算法·leetcode·职场和发展
handler0111 小时前
【Linux 网络】一文读懂 HTTP 协议
linux·c语言·网络·c++·笔记·网络协议·http
And_Ii11 小时前
LeetCode 026. 重排链表
算法·leetcode·链表
我还记得那天11 小时前
用C语言实现一个简易扫雷小游戏
c语言·开发语言
是娇娇公主~11 小时前
力扣——146.LRU缓存详解
算法·leetcode·缓存
我不是懒洋洋11 小时前
【C++】类和对象( 类的定义、实例化、 this指针、 C++和C语言实现Stack对比)
c语言·开发语言·数据结构·c++·经验分享·算法·visual studio