1 class Solution {
2 public:
3 void sortColors(int A[], int n) {
4 // IMPORTANT: Please reset any member data you declared, as
5 // the same Solution instance will be reused for each test case.
6 int i =0 ,j = n-1;
7 while (i<n && A[i]==0)
8 i++;
9 while (j>=0 && A[j]==2)
10 j--;
11 int tmp;
12 for (int k=i; k<=j; k++){
13 if (A[k]==0){
14 A[k]= A[i];
15 A[i] = 0;
16 while (i<n && A[i]==0)
17 i++;
18 k = i-1;
19 continue;
20 }
21 if (A[k]==2){
22 A[k] = A[j];
23 A[j] = 2;
24 while (j>=0 && A[j]==2)
25 j--;
26 k--;
27 continue;
28 }
29 }
30 return;
31 }
32 };