sort colors

 1     void swap( int &a, int &b )
 2     {
 3         int tmp = a;
 4         a = b;
 5         b = tmp;
 6         return;
 7     }
 8     void sortColors(int A[], int n) {
 9         // Start typing your C/C++ solution below
10         // DO NOT write int main() function
11         int r = 0, w = 0, b = n-1;
12         while( w <= b )
13         {
14             if( A[w] == 0 )
15                 swap(A[r++],A[w++] );
16             else if( A[w] == 1 )
17                 w++;
18             else
19                 swap(A[b--],A[w] );
20         }
21         
22     }

 

posted on 2013-07-03 23:27  jumping_grass  阅读(121)  评论(0)    收藏  举报

导航