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;
        }
    }
}
相关推荐
J2虾虾2 小时前
C语言 typedef 用法
c语言·数据结构·算法
兰令水2 小时前
leecodecode【区间DP+树形DP】【2026.6.10打卡-java版本】
java·算法·leetcode
WL学习笔记3 小时前
顺序表详解
c语言·数据结构
8Qi83 小时前
LeetCode 4:寻找两个正序数组的中位数 —— 二分查找法
java·算法·leetcode·职场和发展·二分查找
8Qi83 小时前
LeetCode 32:最长有效括号 —— 栈 + 标记法 题解
java·数据结构·算法·leetcode·职场和发展··括号匹配
Tairitsu_H4 小时前
[LC优选算法#3] 滑动窗口 | 将x减到0的最⼩操作数 | ⽔果成篮 | 字⺟异位词
c++·算法·leetcode·滑动窗口
c++之路4 小时前
CMake 系列教程(一):CMake 基础知识
c语言·开发语言·c++
我还记得那天4 小时前
C语言随机数生成机制与猜数字游戏实现
c语言·开发语言·游戏
洛水水4 小时前
【力扣100题】76.搜索插入位置
数据结构·算法·leetcode
万法若空4 小时前
C/C++基本类型表示范围
c语言·开发语言·c++