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

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

示例 1:

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

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

输入:nums = [0]
输出:[0]
示例 4:

输入:nums = [1]
输出:[1]

提示:

n == nums.length
1 <= n <= 300
nums[i] 为 0、1 或 2

class Solution(object):def sortColors(self, nums):""":type nums: List[int]:rtype: None Do not return anything, modify nums in-place instead."""# nums.sort()N = len(nums)pre = 0for i in range(N):if nums[i]==0:self.swap(nums,pre,i)pre += 1for i in range(pre,N):if nums[i]==1:self.swap(nums,pre,i)pre += 1def swap(self,nums,i,j):tmp = nums[i]nums[i] = nums[j]nums[j] = tmp

【75】颜色分类--荷兰国旗问题相关推荐

  1. 75. 颜色分类(荷兰国旗问题)

    75. 颜色分类(荷兰国旗问题) 题目 解题思路 代码 题目 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中 ...

  2. LeetCode - 75 颜色分类

    给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列.我们使用整数 0. 1 和 2 分别表示红色.白色和蓝色. ...

  3. 【leetcode】75.颜色分类(多种解法,超详细图文解析)

    75. 颜色分类 难度中等 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,**原地**对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们使用整数 0. 1 ...

  4. Leetcode算法Java全解答--75. 颜色分类

    Leetcode算法Java全解答–75. 颜色分类 文章目录 Leetcode算法Java全解答--75. 颜色分类 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 其他 题目 给定 ...

  5. 75. 颜色分类(C++实现)

    文章目录 题目 思路--三指针 题目 题目链接:75. 颜色分类) 思路–三指针 其实颜色分类就是对 0 1 2 这三个数字进行排序,但是排序都是有效率之分的,我们希望可以通过一种高效的方法去排序这三 ...

  6. 2021.1.9每日复习 75.颜色分类(复习快速排序)+ 77.组合(回溯算法)

    ***75.颜色分类(复习快速排序) class Solution {public void sortColors(int[] nums) {//方法一:冒泡排序// int n = nums.len ...

  7. 滑动窗口8:75. 颜色分类-经典荷兰国旗问题

    这个题是非常经典的荷兰国旗问题,我们先看一下题目要求: 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中,我们 ...

  8. leetcode 75. Sort Colors | 75. 颜色分类(荷兰国旗问题,快速排序)

    题目 https://leetcode.com/problems/sort-colors/ 题解 快速排序3.0(随机快排+荷兰国旗技巧优化) 在arr[L-R]范围上,进行快速排序的过程: 1)在这 ...

  9. LeetCode 73矩阵置零74搜素二维矩阵75颜色分类

    新人公众号(求支持):bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打 ...

最新文章

  1. Github 简明教程
  2. Erlang虚拟机的启动
  3. css background-attachment:fixed 固定背景、不随内容一起滚动
  4. 程序员or需求工程师,谁决定软件的最高水平?
  5. 冒烟的意思_冒烟测试是什么?
  6. 网络黑客节庆狂欢 趋势科技见招拆招
  7. SVM之Libsvm工具包的安装教程
  8. osgEarth使用经纬度定义视点/设置相机跟随移动的节点
  9. 电子信息工程考研专业方向解读
  10. KafKa - 集群模式搭建
  11. 制造业的日子为啥难过?因为这几个痛点没有解决
  12. 用php编写一个函数_使给定的一个二维数组(3×3)转置,写一个函数 使给定的一个3x3的二维数组转置,即行列互换...
  13. 安卓修改Airpods的双击功能,改“播放暂停”————下一首
  14. 1:25万全国地形数据库说明(转)
  15. Toontrack EZDrummer for Mac - 鼓音乐制作工具
  16. 浏览器的三个精度Bug
  17. 最后防线:三款开源HIDS应用对比评估
  18. 2022年哈尔滨工业大学计算机考研复试分数线多少
  19. OKRs (Objectives and Key Results)
  20. 虚拟主机和服务器有啥区别,虚拟主机和服务器的区别在哪?

热门文章

  1. swift导入oc第三方库
  2. Android(安卓),如何查看App渠道号?
  3. 如何快速定位 elastic search 运行出现的 bug HTTP/1.1 400 Bad Request type is missing VALUE_NUMBER_INT
  4. Linux进程是如何创建出来的?
  5. 视频教程-wordpress建站教程之环境部署详解课程-PHP
  6. OC-oc语言简介,类和对象
  7. BERT生成能力改进:分离对话生成和对话理解
  8. signature=07da782715954d48aa05e9d49faf92a9,ndls-20201029
  9. 用python写剪刀石头布游戏
  10. python平均成绩计算异常处理_【Python 20】BMR计算器4.0(异常处理)