核心思想,三个游标,L,mid,R
以mid游标为主循环
/*
* @lc app=leetcode id=75 lang=cpp
*
* [75] Sort Colors
*/
// @lc code=start
class Solution {
public:
void sortColors(vector<int>& nums) {
int N = nums.size();
int L = 0;
int R = N-1;
int mid = 0;
while(mid <= R){
if(nums[mid] == 0){
swap(nums[mid],nums[L]);
L++;
mid++;
continue;
}
if(nums[mid] == 1){
mid++;
continue;
}
if(nums[mid] == 2){
swap(nums[mid],nums[R]);
R--;
continue;
}
}
}
};
// @lc code=end
1049



被折叠的 条评论
为什么被折叠?



