【LeetCode每日一题】[中等]75. 颜色分类[补]

    科技2025-10-13  4

    【LeetCode每日一题】[中等]75. 颜色分类

    75. 颜色分类

    题目来源 算法思想:“荷兰国旗问题”,数组计数排序,指针

    题目:

    使用的方法:计数排序,统计0,1,2的个数,然后重写数组

    java代码

    class Solution { public void sortColors(int[] nums) { int zero = 0;//0的个数 int one = 0;//1的个数 int two = 0;//2的个数 //第一次遍历.统计0,1,2的个数 for (int i = 0; i < nums.length; i++) { if(nums[i] == 0) { zero++; } if(nums[i] == 1) { one++; } if(nums[i] == 2) { two++; } } int index = 0; //第二次遍历,根据个数,重写数组 while(index < nums.length) { if(index < zero) { nums[index] = 0; } else if(index < zero + one) { nums[index] = 1; } else { nums[index] = 2; } index++; } } }
    Processed: 0.017, SQL: 8