Sort Colors
**题意:**Given an array with n objects colored red, white or blue, sort them so that objects of the same color are adjacent, with the colors in the order red, white and blue.
Here, we will use the integers 0, 1, and 2 to represent the color red, white, and blue respectively.
题解:就是给定一个数组里包含0,1,2 将它们按照 0 ,1,2这个顺序进行分块排序
代码
忽略1,将0排低位,2排高位
public class Solution {
public void sortColors(int[] nums) {
int count1 = 0, count2 = nums.length - 1, index = 0;
while(index <= count2){
if(nums[index] == 0){
nums[index] = nums[count1];
nums[count1] = 0;
count1++;
}
if(nums[index] == 2){
nums[index] = nums[count2];
nums[count2] = 2;
count2--;
index--;
}
index++;
}
}
}