Leetcode 颜色分类
颜色分类
题目描述:
给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。提示:n == nums.length1 <= n <= 300nums[i] 为 0、1 或 2进阶:
- 你可以不使用代码库中的排序函数来解决这道题吗?
- 你能想出一个仅使用常数空间的一趟扫描算法吗?
题目链接
class Solution {public void sortColors(int[] nums) {// 收集每个颜色所含有的个数int[] color = new int[3];// 常数空间int len = nums.length;for(int i = 0 ; i<len ; i++){color[nums[i]]++;}int j = 0;for(int i = 0 ; i<len ;j++){if(color[j] != 0){while(color[j] != 0){nums[i] = j;color[j]--;i++; // 这里改变了最外层循环的i}}}}
}
该题总共遍历两次。对于第一次遍历:由于颜色只有三种,此时将颜色收集到color数组中;对于第二次遍历:将color数组中的颜色按照顺序分布到数组中,详细请看代码。
Leetcode 颜色分类相关推荐
- 《LeetCode力扣练习》第75题 颜色分类 Java
<LeetCode力扣练习>第75题 颜色分类 Java 一.资源 题目: 给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按 ...
- LeetCode 73矩阵置零74搜素二维矩阵75颜色分类
新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...
- Leetcode算法Java全解答--75. 颜色分类
Leetcode算法Java全解答–75. 颜色分类 文章目录 Leetcode算法Java全解答--75. 颜色分类 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 其他 题目 给定 ...
- LeetCode - 75 颜色分类
给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列.我们使用整数 0. 1 和 2 分别表示红色.白色和蓝色. ...
- leetcode必刷题(四)lee75 颜色分类、lee76 最小覆盖字串、lee78 子集、lee79 单词搜索、lee84 柱状图中最大的矩形、lee85 最大矩形、lee96 不同的二叉搜索树、
lee75 颜色分类 patition 三个指针 lee76 最小覆盖字串 滑动窗口 lee78 子集 无重复数字 回溯 lee79 单词搜索 回溯 lee84 柱状图中最大的矩形 单调栈 lee85 ...
- 【leetcode】75.颜色分类(多种解法,超详细图文解析)
75. 颜色分类 难度中等 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,**原地**对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们使用整数 0. 1 ...
- leetcode菜狗入门 | 75. 颜色分类
颜色分类 题目描述 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们使用整数 0. 1 和 2 分别表示 ...
- leetcode系列-颜色分类(sort colors)
分类:array 难度:medium 颜色分类 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们使用整数 ...
- Leetcode题目分类指南(单独刷题或学习算法书籍配合使用)
Leetcode题目分类指南 笔者在学习<算法导论>同时,希望能够配合Leetcode的题目进行分类模块化练习,该分类为笔者自己根据做题学习经验,结合<算法导论>的内容,给出L ...
- 颜色分类问题 快速排序day02
颜色分类问题 leetcode 75 这道题我开始当成排序题做了,因为要求是进行原地排序,所以我使用的是插入排序 public static void sortColors(int[] nums) { ...
最新文章
- 政、企、学三方视角下的智慧城市发展 | 2020中关村论坛“人工智能与城市可持续发展论坛”成功举办...
- Gradle引人注目的特性集
- C++标准输入流、输出流以及文件流
- go 错误处理总结
- 微软要放弃Edge了?传微软正在构建基于Chromium的浏览器
- DbVisualizer的Driver连接Oracle Thin选项不可选
- SQL Server 2005 如何自动备份数据库
- struts1、 struts2所有版本jar包下载地址大全
- html和css基础整理
- linux命令tar -xzvf等
- 作文 进入中职计算机班,我的中职生活作文(精选5篇)
- qq聊天/msn聊天/发送邮件
- 如何 运行WRF模型 天气预报 数据后处理
- 39元超值!360超级充电器拆解与评测
- 【我奶奶都能看懂系列005】☀️python基础语法——容器,小学生也可以学!
- 瑞波基因XAG聚合CEC系统细节举例说明
- JAVA读取注册表中的值
- ipad全系列_为iPad提供全职工作
- (一) elasticsearch-dsl查询操作
- 图文并茂使用VUE+Quasar CLI开发和构建PWA