首页 > 其他分享 >75. 颜色分类

75. 颜色分类

时间:2022-08-22 00:11:44浏览次数:82  
标签:颜色 nums 示例 ++ 分类 75 swap

75. 颜色分类

给定一个包含红色、白色和蓝色、共 n个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。

我们使用整数 0、 12 分别表示红色、白色和蓝色。

必须在不使用库的sort函数的情况下解决这个问题。

 

示例 1:

输入:nums = [2,0,2,1,1,0]
输出:[0,0,1,1,2,2]

示例 2:

输入:nums = [2,0,1]
输出:[0,1,2]

 

提示:

  • n == nums.length
  • 1 <= n <= 300
  • nums[i]012

 

进阶:

  • 你可以不使用代码库中的排序函数来解决这道题吗?
  • 你能想出一个仅使用常数空间的一趟扫描算法吗?

 

class Solution {
public:
    void sortColors(vector<int>& nums) {
        if(nums.size() == 1) return;
        int i = 0, p = 0, j = nums.size() - 1;
        while(p <= j)
        {
            if(i == p && nums[i] == 0) p++;
            if(p > j) break;
            // if(j == p && nums[j] == 2) p++;            
            if(nums[p] == 0)
            {
                swap(nums[p], nums[i]);
                i++;
            }
            else if(nums[p] == 2)
            {
                swap(nums[p], nums[j]);
                j--;
            }
            else p++;

        }

        
    }
};

 

标签:颜色,nums,示例,++,分类,75,swap
From: https://www.cnblogs.com/WTSRUVF/p/16611504.html

相关文章

  • 4. 基础实战——FashionMNIST时装分类
    importosimportnumpyasnpimportpandasaspdimporttorchimporttorch.nnasnnimporttorch.optimasoptimfromtorch.utils.dataimportDataset,DataLoad......
  • 随笔分类 - Microsoft Dynamices CRM(2013, 2011)
    随笔分类-MicrosoftDynamicesCRM(2013,2011)MicrosoftDynamicsCRM数据库连接存储位置在哪里是在注册表里摘要:MicrosoftDynamicsCRM数据库连接存储......
  • 10--DSL查询文档-查询分类和基本语法
    elasticsearch的查询依然是基于JSON风格的DSL来实现的。 DSL查询分类Elasticsearch提供了基于JSON的DSL(DomainSpecificLanguage)来定义查询。常见的查询类型包括:(1)......
  • 《GB17589-2011》PDF下载
    《GB17589-2011X射线计算机断层摄影装置质量保证检测规范》PDF下载《GB17589-2011》简介本标准规定了对医用X射线计算机断层摄影装置以质量保证为目的进行检测的方法及......
  • VUE+ElementUI更改导航菜单选中背景颜色
    UE+ElementUI更改导航菜单选中背景颜色主要是设置.el-menu-item.is-active选择器的样式属性官方文档中提供background-color、text-color、active-text-color三种属性......
  • 状压DP-1755. 最接近目标值的子序列和
    问题描述给你一个整数数组nums和一个目标值goal。你需要从nums中选出一个子序列,使子序列元素总和最接近goal。也就是说,如果子序列元素和为sum,你需要最小化绝......
  • vue中使用tag标签根据状态显示不同颜色区分
    场景前端列表中有状态显示,会根据状态值的不同显示不同的颜色进行区分实战1、给tag增加颜色显示<Tagcolor="blue">标签一</Tag>2、根据值的不同需要增加判断<Tag:c......
  • 275. H 指数 II--Leetcode_二分
    来源:力扣(LeetCode)链接:https://leetcode.cn/problems/h-index-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目的大意是这样的 有一个升序......
  • 河北稳控科技常用的振弦传感器分类及无线振弦采集仪的常见问题
    河北稳控科技常用的振弦传感器分类及无线振弦采集仪的常见问题一.振弦传感器分类振动传感器的种类丰富,按照工作原理的不同,能分为电涡流式振动传感器、电感式振动传感器、......
  • 275. H 指数 II--Leetcode_暴力
    来源:力扣(LeetCode)链接:https://leetcode.cn/problems/h-index-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目的大意是这样的 有一个升序......