首页 > 其他分享 >颜色分类(单指针)

颜色分类(单指针)

时间:2025-01-10 21:02:01浏览次数:5  
标签:蓝色 颜色 nums 示例 int 分类 红色 指针

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

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

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

 

示例 1:

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

示例 2:

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

 

class Solution {
public:
    void sortColors(vector<int>& nums) {
        //单指针
        int ptr=0;
        //先放置0
        for(int i=0;i<nums.size();i++){
            if(nums[i]==0){
                swap(nums[i],nums[ptr]);
                ptr++;
            }
        }
        //再放置1
        for(int i=ptr;i<nums.size();i++){
            if(nums[i]==1){
                swap(nums[i],nums[ptr]);
                ptr++;
            }
        }
    }
};

 

标签:蓝色,颜色,nums,示例,int,分类,红色,指针
From: https://www.cnblogs.com/yueshengd/p/18664686

相关文章

  • 【C++】揭开C++类与对象的神秘面纱(首卷)(类的基础操作详解、实例化艺术及this指针的深
    文章目录一、类的定义1.类定义格式2.类访问限定符3.类域二、类的实例化1.实例化概念2.对象的大小三、隐藏的this指针与相关练习1.this指针的引入与介绍练习1练习2练习3一、类的定义1.类定义格式   在讲解类的作用之前,我们来看看类是如何定义的,在C++中,class......
  • 常见 PowerShell 命令按功能分类的表格;PowerShell 命令的进一步补充。它涵盖了更全面
    常见PowerShell命令按功能分类的表格:分类命令说明文件操作Get-ChildItem (ls, dir)获取目录中的文件和文件夹 New-Item创建新文件或文件夹 Remove-Item删除文件或文件夹 Copy-Item复制文件或文件夹 Move-Item移动文件或文件夹 Set-......
  • 使用模型训练计算机分类食物,并采用迁移学习的方法改善学习效果。
    1、前期准备将我们可能用到的包导入到项目中importrandomimporttorchimporttorch.nnasnnimportnumpyasnpimportosfromtorch.utils.dataimportDataset,DataLoaderfromPILimportImage#读取图片包fromtqdmimporttqdm#看轮次进行到多少fromtor......
  • cpp智能指针
      普通指针的不足new和new[]的内存需要用delete和deletel]释放。程序员的主观失误,忘了或漏了释放。程序员也不确定何时释放。普通指针的释放类内的指针,在析构函数中释放。C++内置数据类型,如何释放?new出来的类,本身如何释放?C++11新增三个智能指针类型uniqu......
  • STM32垃圾分类系统设计与实现
    引言垃圾分类作为现代环保和资源回收的重要环节,已经成为了各地政府和环保组织高度关注的议题。合理的垃圾分类不仅能够有效减少垃圾的填埋量,还能提高资源的回收利用率,减少环境污染。随着物联网技术的发展,智能垃圾分类系统的设计和实现成为了当前研究的热点。本文将介绍如......
  • python画大的pass与fail logo(带颜色)
    print("\033[32m"+4*""+9*"x"+10*""+1*"x"+11*""+7*"x"+5*""+7*"x"+4*""+"\033[0m")print("\033[32m"+4*""+2*"x"......
  • 【2025最新】渗透测试是什么?怎么分类?测试流程(超详细)是什么?
    一、渗透测试是什么?渗透测试是一种模拟黑客攻击的方法,通过对系统的弱点进行测试,以发现系统可能存在的安全漏洞。渗透测试可以帮助组织了解其系统的安全性,并采取必要的措施来增强系统的安全性。二、渗透测试怎么分类?(一)外部渗透测试和内部渗透测试。1.外部渗透测试:这种......
  • 《python基于循环神经网络的情感分类系统》毕业设计项目
    大家好我是君君学姐,混迹在java圈的辛苦码农。今天要和大家聊的是一款《python基于循环神经网络的情感分类系统》毕业设计项目。项目源码以及部署相关请联系君君学姐,文末附上联系信息。......
  • 深度学习的分类
    深度学习的分类可以从多个角度进行划分,以下是一些主要的分类方式及其对应的模型:一、根据学习方式分类监督学习(SupervisedLearning)定义:利用带有标签的数据进行训练,使网络能够学习到从输入到输出的映射关系。常见模型:卷积神经网络(CNN):主要用于图像处理领域,如图像分类、目标......
  • 深度学习的分类(二)
    深度学习的分类可以从多个维度进行,以下是一些常见的分类方式:按网络结构分类前馈神经网络(Feed-ForwardNeuralNetwork):是最基本的神经网络类型,数据从输入层进入,经过隐藏层的计算处理,最终从输出层输出结果,信息在网络中单向流动,没有反馈回路。例如多层感知机(MLP),它由输入层、多个......