首页 > 其他分享 >#yyds干货盘点# LeetCode面试题:颜色分类

#yyds干货盘点# LeetCode面试题:颜色分类

时间:2023-04-13 19:31:42浏览次数:35  
标签:yyds 面试题 temp nums int 示例 LeetCode ++ ptr

1.简述:

给定一个包含红色、白色和蓝色、共 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]

2.代码实现:

class Solution {
    public void sortColors(int[] nums) {
        int n = nums.length;
        int ptr = 0;
        for (int i = 0; i < n; ++i) {
            if (nums[i] == 0) {
                int temp = nums[i];
                nums[i] = nums[ptr];
                nums[ptr] = temp;
                ++ptr;
            }
        }
        for (int i = ptr; i < n; ++i) {
            if (nums[i] == 1) {
                int temp = nums[i];
                nums[i] = nums[ptr];
                nums[ptr] = temp;
                ++ptr;
            }
        }
    }
}

标签:yyds,面试题,temp,nums,int,示例,LeetCode,++,ptr
From: https://blog.51cto.com/u_15488507/6188328

相关文章

  • 【面试题】思维逻辑方面
    1、有一个没有刻度的长方形的铁盒子,没有盖子,可以随意摆动,它的容积是1升。请罗列出你能想到的:只使用这个盒子称量,列出你可以想到的能够准确地量出多少升的水?答案:0.5L  2、排队,小明站在从前往后数的第x个,从后往前数的第y个,则小明所在的列共有多少人?答案:x+y-13、桌子......
  • MySQL面试题-2023
                          参考链接:https://blog.csdn.net/weixin_41622043/article/details/103426652https://xiaolincoding.com/mysql/base/how_select.html ......
  • python面试题-2023(面试)
    1.python中有哪些可变类型与不可变类型?可变:list、dict、set不可变:tuple、str、整型(int、float、complex)注意:可变对象可以在原来地址上修改元素,不可变则不行(即不能在自己身上增删改),若要修改可以使用对象拼接赋值给新的对象,总之不能修改自身       参考链......
  • 面试题4.12
    #面试题:1wsgiuwsgiuWSGI,cgi,fastcgi分别是什么?2如何自定制上下文管理器3Python是值传递还是引用传递wsgiuwsgiuWSGI,cgi,fastcgi分别是什么?中间件:介于a和b之间的东西都称为中间件'''服务器中间件:nginx,apache数据库中间件:介于应用程序和数据库之间的:MyCat消息......
  • leetcode_打卡3
    leetcode_打卡3题目:1431.拥有最多糖果的孩子解答:classSolution{publicList<Boolean>kidsWithCandies(int[]candies,intextraCandies){intmax=0;intn=candies.length;List<Boolean>result=newArrayList<Boolean>();......
  • leetcode_打卡2
    leetcode_打卡21071.字符串的最大公因子思路:该题的答案一定是两个字符串的公共前缀,找到最大公共前缀,并且验证这个前缀能否被两个字符串除尽!classSolution{publicStringgcdOfStrings(Stringstr1,Stringstr2){intlen1=str1.length();intlen2=......
  • 面试题:JS如何最快的执行垃圾回收机制
    因为没看见答案,所以也不知道对不对。 JavaScript的垃圾回收机制是由JavaScript引擎自动管理的,通常情况下我们无法控制垃圾回收机制的执行时间和频率。然而,我们可以采取一些优化策略来减少垃圾回收的性能开销,从而提高代码执行速度。减少全局变量:全局变量不易被垃圾回收,因......
  • 回溯理论基础及leetcode
    回溯与递归相辅相成;回溯是递归的副产品,只要有递归就会有回溯。回溯函数也就是递归函数,指的都是一个函数。回溯搜索法纯暴力搜索解决的问题组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条......
  • 6-面试题(Web自动化测试)
    1、如何提升webui自动化的稳定性1·导致ui自动化不稳定的因素1.1web页面的多变1.2页面隐藏元素1.3页面元素加载不稳定1.4系统业务复杂1.5ajax请求问题1.6测试环境数据准备问题2·解决问题的各种方法1.从自动化框架解决问题1.1设置显式等待重写selenium的底层接口......
  • 2.1万字,30张图详解操作系统常见面试题(收藏版)
    耗时两周,新版的操作系统常见知识点/问题总结总算搞完了,手绘了30多张图。大家可以用来复习操作系统或者准备操作系统面试。对于大部分公司的面试来说基本够用了,不过,像腾讯、字节这种大厂的面试还是要适当深入一些。这篇文章总结了一些我觉得比较重要的操作系统相关的问题比如用......