耍赖皮写法 嘻嘻
class Solution {
public:
void sortColors(vector<int>& nums) {
int count1 = 0;
int count2 = 0;
int count3 = 0;
for(int i = 0; i<nums.size(); i++)
{
if(nums[i] == 0)
count1 += 1;
else if(nums[i] == 1)
count2 += 1;
else
count3 +=1;
}
for(int i = 0; i<nums.size(); i++)
{
if(i<count1)
nums[i] = 0;
else if( i< count1+count2)
nums[i] = 1;
else if( i< count1+count2+count3)
nums[i] = 2;
}
}
};
Thinking
1 动三个: 定两个 一次; 定一个 时间换空间 两次
2 指针 swap