【LeetCode热题100】【技巧】颜色分类

题目链接:75. 颜色分类 - 力扣(LeetCode)

只需排序三种,可以记录0和1的个数,然后直接原地赋值

class Solution {
public:
    void sortColors(vector<int> &nums) {
        int zero = 0, one = 0;
        for (auto &num: nums)
            if (num == 0)
                zero++;
            else if (num == 1)
                one++;
        for (int i = 0; i < zero; i++)
            nums[i] = 0;
        for (int i = zero; i < zero + one; i++)
            nums[i] = 1;
        for (int i = zero + one; i < nums.size(); i++)
            nums[i] = 2;
    }
};

相关推荐

  1. LeetCode100】【技巧颜色分类

    2024-04-08 19:44:01       17 阅读
  2. LeetCode100】【技巧】多数元素

    2024-04-08 19:44:01       13 阅读
  3. Leetcode100

    2024-04-08 19:44:01       35 阅读
  4. LeetCode100

    2024-04-08 19:44:01       9 阅读
  5. Leetcode100

    2024-04-08 19:44:01       6 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-08 19:44:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-08 19:44:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-08 19:44:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-08 19:44:01       20 阅读

热门阅读

  1. Shell学习 - 2.24 Shell let命令:对整数进行数学运算

    2024-04-08 19:44:01       15 阅读
  2. 【备忘录】Linux kill 多个进程命令备忘

    2024-04-08 19:44:01       13 阅读
  3. 实现窗口拖拽移动

    2024-04-08 19:44:01       15 阅读
  4. 后端开发教程

    2024-04-08 19:44:01       14 阅读
  5. 【TypeScript系列】声明文件

    2024-04-08 19:44:01       13 阅读
  6. 单片机数码管程序

    2024-04-08 19:44:01       15 阅读
  7. go channel 的底层实现原理 (数据结构)

    2024-04-08 19:44:01       15 阅读
  8. 蜗牛-蓝桥每日真题

    2024-04-08 19:44:01       12 阅读
  9. c模板编程c/c++20240401

    2024-04-08 19:44:01       10 阅读