技术栈

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

DdddJMs__1352024-05-11 11:41

题目:

题解:

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;
        }
    }
}
上一篇:Java刷题-基础篇
下一篇:《Mask2Former》算法详解
相关推荐
No0d1es
20 分钟前
电子学会青少年软件编程(C语言)等级考试试卷(三级)2025年12月
c语言·c++·青少年编程·电子学会·三级
bjxiaxueliang
1 小时前
一文掌握C/C++命名规范:风格、规则与实践详解
c语言·开发语言·c++
寄存器漫游者
2 小时前
数据结构:带头节点单链表
c语言·数据结构
定偶
2 小时前
MySQL多表连接查询详解
c语言·数据库·mysql
Ll1304525298
2 小时前
Leetcode二叉树 part1
b树·算法·leetcode
呱呱巨基
3 小时前
c语言 文件操作
c语言·开发语言·c++·笔记·学习
云小逸
5 小时前
【Nmap 设备类型识别技术】整体概况
服务器·c语言·网络·c++·nmap
梵刹古音
5 小时前
【C语言】 跳转语句
c语言·开发语言·算法
C语言小火车
5 小时前
Qt样式实现方式详解:六大方法全面解析
c语言·c++·qt·学习
鱼跃鹰飞
6 小时前
Leetcode:97.交错字符串
linux·服务器·leetcode
热门推荐
01GitHub 镜像站点02Clawdbot 中文汉化版 接入微信、飞书03OpenCode 入门教程:介绍 · 安装 · 配置第三方 API (如 Claude)04Claude Code Skills 实用使用手册05Claude Code + GLM4.7 避坑指南:解决 Unable to connect to Anthropic services06OpenClaw部署与配置教程:在Mac mini上接入国产大模型与飞书07UV安装并设置国内源08在Trae中使用Pencil MCP09Linux下V2Ray安装配置指南10Vue-skills的中文文档