/*
[0, j - 1]: 为0所在区间
[j, i - 1] :为1所在区间
[k + 1, n - 1]:为2所在区间
*/
class Solution {
public void sortColors(int[] nums) {
for (int i = 0, j = 0, k = nums.length - 1; i <= k;) {
if (nums[i] == 0) swap(nums, j ++, i ++);
else if (nums[i] == 2) swap(nums, k --, i);
else i ++;
}
}
private void swap(int[] nums, int j, int i) {
int t = nums[j];
nums[j] = nums[i];
nums[i] = t;
}
}
颜色分类
最新推荐文章于 2022-06-29 10:36:30 发布