版权声明:by ruohua3kou https://blog.csdn.net/ruohua3kou/article/details/89035084
在一次遍历中排三个数字的序,参考快排partion的思路
class Solution {
public:
void sortColors(vector<int>& nums) {
int n=nums.size();
int left=0,right=n-1;
int index=0;
while(index<=right){
if(nums[index]==0){
swap(nums[left],nums[index]);
left++;
index++;
}
else if(nums[index]==1){
index++;
}
else{
swap(nums[index],nums[right]);
right--;
}
}
}
};