荷蘭國旗

private static void sortBalls(int a[]){
		int cur=0, begin=0, end=a.length-1;
		
		while( cur <= end){
			if( a[cur]==0){
				a[cur] = a[cur]^a[begin];
				a[begin] = a[cur]^a[begin];
				a[cur] = a[cur]^a[begin];
				cur++; begin++;
			}
			
			else if( a[cur]==1) cur++;
			else{
				a[cur]=a[cur]^a[end];
				a[end]=a[cur]^a[end];
				a[cur]=a[cur]^a[end];
			}
		}
	}

         本文为《编程之法 面试和算法心得》读书笔记。java

相关文章
相关标签/搜索