荷蘭國旗

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

相關文章
相關標籤/搜索