力扣第75题颜色分类

一、题目:75. 颜色分类
力扣第75题颜色分类_第1张图片

二、题目解析:

  1. 借助一个 int[] bucket 来记录每个数字出现的次数,例如: 如果 5 出现了3次,那么 bucket[5] 就等于3。
  2. 基于这样,我们只需要遍历一次 nums[] ,就能得出每个数字到底有几个,然后再遍历 bucket[] 将其中的数字依次按照数量取出来。
  3. 注意:假设我们有一个数 21474843647 ,那就意味着 bucket[] 的大小就是21474843647 ,桶排的时间复杂度不仅仅由 nums[] 的长度决定,还由 nums[] 的值域范围决定,但是这道题目, nums[i] 的可能取值只有 0,1,2,所以我们可以放心大胆地使用桶排。

三、代码实现:

public void sortColors(int[] nums) 

你可能感兴趣的:(leetcode,算法)