public int getNumberOccurringOnce(int arr[]){
        int result = 0;
        for(int i=0; i < 32; i++){
            int sum = 0;
            for(int j=0; j < arr.length; j++){
                sum += (arr[j] & 1<<i)>>i; 
            }
            result = result | (sum%3)<<i;
        }
        return result;
    }
http://www.geeksforgeeks.org/find-the-element-that-appears-once/
src/com/interview/bits/FindNumberOccurringOnceOtherNumbers3Times.java