当前位置: 首页 > news >正文

【Hot100】LeetCode—75. 颜色分类

目录

  • 1- 思路
    • 题目识别
    • 技巧
  • 2- 实现
    • 75. 颜色分类——题解思路
  • 3- ACM 实现


  • 原题链接:75. 颜色分类

1- 思路

题目识别

  • 识别1 :给定三种类型数据,使得三种数据用一次遍历实现三种数据排序。

技巧

  • 用两条线将数组分为三部分
  • A 线左侧,保证数据都为 0 ;B 线右侧保证元素都是 2。


2- 实现

75. 颜色分类——题解思路

在这里插入图片描述

class Solution {public void sortColors(int[] nums) {int left = 0;int right = nums.length-1;for(int i = 0 ; i <= right;i++){if(nums[i] == 0){swap(nums,i,left++);}else if(nums[i] == 2){swap(nums,i--,right--);}}}private void swap(int[] nums,int i,int j){int tmp = nums[i];nums[i] = nums[j];nums[j] = tmp;}
}

3- ACM 实现

public class sortColors {public static void sortC(int[] nums){int left = 0;int right = nums.length-1;for(int i = 0 ; i <= right;i++){if(nums[i] == 0){swap(nums,i,left++);}else if(nums[i] == 2){swap(nums,i--,right--);}}}private static void swap(int[] nums,int i ,int j){int tmp = nums[i];nums[i] = nums[j];nums[j] = tmp;}public static void main(String[] args) {Scanner sc = new Scanner(System.in);String input = sc.nextLine();input = input.replace("[","").replace("]","");String[] parts = input.split(",");int[] nums = new int[parts.length];for(int i= 0 ; i < nums.length;i++){nums[i] = Integer.parseInt(parts[i]);}sortC(nums);System.out.println("结果是");for(int i : nums){System.out.print(i+" ");}}
}

相关文章:

【Hot100】LeetCode—75. 颜色分类

目录 1- 思路题目识别技巧 2- 实现⭐75. 颜色分类——题解思路 3- ACM 实现 原题链接&#xff1a;75. 颜色分类 1- 思路 题目识别 识别1 &#xff1a;给定三种类型数据&#xff0c;使得三种数据用一次遍历实现三种数据排序。 技巧 用两条线将数组分为三部分A 线左侧&#x…...

【物联网技术大作业】设计一个智能家居的应用场景

前言&#xff1a; 本人的物联网技术的期末大作业&#xff0c;希望对你有帮助。 目录 大作业设计题 &#xff08;1&#xff09;智能家居的概述。 &#xff08;2&#xff09;介绍智能家居应用。要求至少5个方面的应用&#xff0c;包括每个应用所采用的设备&#xff0c;性能&am…...

ESP8266做httpServer提示Header fields are too long for server to interpret

CONFIG_HTTP_BUF_SIZE512 CONFIG_HTTPD_MAX_REQ_HDR_LEN1024 CONFIG_HTTPD_MAX_URI_LEN512CONFIG_HTTPD_MAX_REQ_HDR_LEN由512改为1024...

jmeter设置全局token

1、创建setup线程&#xff0c;获取token的接口在所有线程中优先执行&#xff0c;确保后续线程可以拿到token 2、添加配置原件-Http信息头管理器&#xff0c;添加取样器-http请求 配置好接口路径&#xff0c;端口&#xff0c;前端传参数据&#xff0c;调试一下&#xff0c;保证获…...

DORIS - DORIS之索引简介

索引概述 索引对比 索引建议 &#xff08;1&#xff09;最频繁使用的过滤条件指定为 Key字段&#xff0c;自动建前缀索引&#xff0c;它的过滤效果最好&#xff0c;但是一个表只能有一个前缀索引&#xff0c;因此要用在最频繁的过滤条件上&#xff0c;前缀索引比较小&#xff…...

Java 串口通信—收发,监听数据(代码实现)

一、串口通信与串行通信的原理 串行通信是指仅用一根接收线和一根发送线&#xff0c;将数据以位进行依次传输的一种通讯方式&#xff0c;每一位数据占据一个固定的时间长度。 串口通信&#xff08;Serial Communications&#xff09;的概念非常简单&#xff0c;串口按位&#x…...

fileinput pdf编辑初始化预览

var $fileLinkInput $(#file_link_full); $fileLinkInput.fileinput({language: zh,uploadUrl: <?php echo Yii::$app->urlManager->createUrl([file/image, type > work_file]);?>,initialPreview: [defaultFile],initialPreviewAsData: true,initialPrevie…...

微信支付开发-需求整理及需求设计

一、客户要求 1、通过唤醒机器人参与答题项&#xff0c;机器人自动获取题目&#xff0c;用户进行答题&#xff1b; 2、用户答对题数与后台设置的一样或者更多&#xff0c;则提醒用户可以领取奖品&#xff0c;但是需要用户支付邮费&#xff1b; 3、用户在几天之内不能重复领取奖…...

vs code: pnpm : 无法加载文件 C:\Program Files\nodejs\pnpm.ps1,因为在此系统上禁止运行脚本

在visual studio code运行pnpm出错&#xff1a; pnpm : 无法加载文件 C:\Program Files\nodejs\pnpm.ps1&#xff0c;因为在此系统上禁止运行脚本 解决方案&#xff1a; 到C:\Program Files\nodejs文件夹下删除pnpm.ps1即可。 C:\Program Files\nodejs改成你自己的路径...

web测试必备技能:浏览器兼容性测试

如今&#xff0c;市面上的浏览器种类越来越多&#xff08;尤其是在平板和移动设备上&#xff09;&#xff0c;这就意味着你所测试的站点需要在这些你声称支持浏览器上都能很好的工作。 同时&#xff0c;主流浏览器&#xff08;IE&#xff0c;Firefox&#xff0c;Chrome&#x…...

《数据资产管理核心技术与应用》首次大型赠书活动圆满结束

《数据资产管理核心技术与应用》是清华大学出版社出版的一本图书&#xff0c;作者为张永清等著&#xff0c;在2024.9.11号晚上20:00&#xff0c;本书作者张永清联合锋哥聊数仓公众号和清华大学出版社一起&#xff0c;向各大大数据技术爱好者通过三轮互动活动赠送了3本正版图书。…...

vue在一个组件引用其他组件

在vue一个组件中引用另一个组件的步骤 必须在script中导入要引用的组件需要在export default的components引用导入的组件(这一步经常忘记)在template使用导入的组件<script><!-- 第一步,导入--> import Vue01 from "@/components/Vue01.vue";...

软件测试学习笔记丨Postman实战练习

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/32096#h-22 二、实战练习 2.1 宠物商店接口文档分析 接口文档&#xff1a;http://petstore.swagger.io &#xff0c;这是宠物商店接口的 swagger 文档。 2.1.1 什么是 swagger Swagger 是…...

kubernetes微服务基础及类型

目录 1 什么是微服务 2 微服务的类型 3 ipvs模式 ipvs模式配置方式 4 微服务类型详解 4.1 ClusterIP 4.2 ClusterIP中的特殊模式headless 4.3 nodeport 4.4 metalLB配合loadbalance实现发布IP 1 什么是微服务 用控制器来完成集群的工作负载&#xff0c;那么应用如何暴漏出去&…...

linux-L3_linux 查看进程(node-red)

linux 查看进程 以查看进程node-red为例 ps aux | grep node-red...

区块链之变:揭秘Web3对互联网的改变

传统游戏中&#xff0c;玩家的虚拟资产&#xff08;如角色、装备&#xff09;通常由游戏公司控制&#xff0c;玩家无法真正拥有这些资产或进行交易。而在区块链游戏中&#xff0c;虚拟资产通过去中心化技术记录在区块链上&#xff0c;玩家对其拥有完全的所有权&#xff0c;并能…...

SAP B1 Web Client MS Teams App集成连载一:先决条件/Prerequisites

一、先决条件/Prerequisites 在设置 SAP Business One 应用之前&#xff0c;确保您已具备以下各项&#xff1a;Before you set up the SAP Business One app, make sure you have acquired the following: 1.Microsoft Teams 管理员账户/A Microsoft Teams admin account 您需…...

去除单细胞数据中环境游离的RNA污染-decontX工具学习

DecontX 是一种用于单细胞 RNA 测序数据的去除环境污染物&#xff08;decontamination&#xff09;的工具&#xff0c;主要用于减少由细胞外RNA造成的污染效应。 开发者在20年的文章中已经把这个工具适用的情况说的非常清楚了&#xff1a;简单来说就是基于微流控的单细胞技术会…...

Games101图形学笔记——光栅化

这里写目录标题 Rasterization光栅化屏幕空间隔行扫描三角形采样采样产生的问题反走样处理方法&#xff1a;采样前模糊 频率&#xff0c;时域傅里叶级数展开傅里叶变换 滤波高通滤波低通滤波 卷积卷积的一些定理 反走样MSAA&#xff08;Multisample Anti-Aliasing&#xff09;多…...

2024年汉字小达人区级自由报名的几个最新问题和真题练一练

2024年第十一届汉字小达人的区级活动的时间9月25-30日正式开赛&#xff0c;还有不到两周。 今天继续回答家长和孩子们的几个问题&#xff0c;并给大家看看一些真题&#xff0c;让孩子对汉字小达人的题型和比赛有直观的了解&#xff0c;从而更好地备考。 本专题在比赛前持续更…...

Purpur性能调优实战指南:7大核心优化方案深度解析

Purpur性能调优实战指南&#xff1a;7大核心优化方案深度解析 【免费下载链接】Purpur Purpur is a drop-in replacement for Paper servers designed for configurability, and new fun and exciting gameplay features. 项目地址: https://gitcode.com/gh_mirrors/pu/Purpu…...

ElevenLabs语音合成效果翻倍的秘密(行业未公开的声学参数调优矩阵)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ElevenLabs英文语音合成效果翻倍的核心洞察 关键瓶颈在于语音上下文建模粒度 ElevenLabs 的高质量语音合成并非单纯依赖更大模型参数量&#xff0c;而是通过细粒度的语义-韵律联合编码实现自然度跃升。…...

HS2-HF_Patch终极指南:一键为Honey Select 2安装完整增强补丁

HS2-HF_Patch终极指南&#xff1a;一键为Honey Select 2安装完整增强补丁 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是专为《Honey Select 2》…...

终极macOS清理神器:Pearcleaner 3步彻底卸载应用不留痕迹

终极macOS清理神器&#xff1a;Pearcleaner 3步彻底卸载应用不留痕迹 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾将macOS应用拖入废纸篓后&…...

Ruby中文分词利器Rurima:纯Ruby实现的高性能分词引擎详解

1. 项目概述&#xff1a;一个为Ruby打造的现代中文分词引擎在Ruby社区里&#xff0c;处理中文文本一直是个有点“硌脚”的活儿。如果你做过中文搜索、内容分析或者简单的词频统计&#xff0c;肯定遇到过这个经典难题&#xff1a;怎么把一串连续的中文字符&#xff0c;准确地切割…...

Thorium浏览器深度解析:5个核心优势与进阶配置实战

Thorium浏览器深度解析&#xff1a;5个核心优势与进阶配置实战 【免费下载链接】thorium Chromium fork named after radioactive element No. 90. Source code and Linux releases. Windows/MacOS/ARM builds served in different repos, links are towards the top of the RE…...

从TPM到机密计算:远程证明技术原理与zap1项目实践指南

1. 项目概述与核心价值最近在整理一些零散的学习笔记时&#xff0c;发现了一个挺有意思的项目&#xff0c;叫Frontier-Compute/zap1-learning-attestation。乍一看这个标题&#xff0c;可能有点让人摸不着头脑&#xff0c;尤其是对于刚接触可信计算或者硬件安全领域的朋友来说。…...

基于Docker部署OpenOffice无头服务实现文档自动化处理

1. 项目概述与核心价值最近在折腾文档处理自动化流程&#xff0c;发现很多老项目或者特定场景下&#xff0c;对Office文档的兼容性要求极高&#xff0c;尤其是那些需要处理.doc、.xls、.ppt等老格式的场景。直接用现代办公套件&#xff08;比如LibreOffice&#xff09;去处理&a…...

告别标题栏!在RK3568 Buildroot固件上,让你的Qt应用开机全屏显示的保姆级教程

RK3568嵌入式全屏实战&#xff1a;从Weston配置到Qt应用独占显示的完整指南 在嵌入式Linux系统开发中&#xff0c;GUI应用的全屏显示往往成为工程师面临的第一个"拦路虎"。当你在RK3568平台上精心开发的Qt应用启动后&#xff0c;却发现屏幕顶部顽固地挂着Weston窗口管…...

Gopeed下载器深度解析:从零开始构建你的全平台高速下载解决方案

Gopeed下载器深度解析&#xff1a;从零开始构建你的全平台高速下载解决方案 【免费下载链接】gopeed A fast, modern download manager for HTTP, BitTorrent, Magnet, and ed2k. Cross-platform, built with Golang and Flutter. 项目地址: https://gitcode.com/GitHub_Tre…...