找出陣列中只出現一次的數字

2021-08-26 23:02:59 字數 617 閱讀 6851

乙個整型陣列裡除了乙個數字以外,其他數字都出現了兩次。找出這個只出現一次的數字

*    異或運算:任何乙個數字異或它本身都等於0,

*    如果從頭到尾異或陣列中的每乙個數字,那些出現兩次的數字全部在異或中會被抵消,

*    最終的結果剛好是這個只出現一次的數字

package jbarray;

/** * 找出陣列中只出現一次的數字

* @author dan

* */

public class findonce

} //若某位上的結果不能被整除,則肯定目標數字在這一位上

for (int i = 0; i < 32; i++)

} }

public static void main(string args) ;

int arr2 = ;

int num = findnotdouble(arr1);

int num1 = findonce(arr2, 3);

system.out.println(num);

system.out.println(num1);

}

找出陣列中只出現一次的數字

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。package factory description 只出現一次的數字 author jaryn date 2019 12 2 16 36 public class onenumer return...

40 找出陣列中只出現一次的數字

題目描述 乙個整型陣列裡除了兩個數字之外,其他的數字都出現了兩次。編寫程式找出這個兩個只出現一次的數字。要求時間複雜度o n 空間複雜度o 1 如,輸出 解析 空間複雜度為o 1 斷絕了用hash table的思路,時間複雜度o n 斷絕排序的思路。如何判斷乙個數字出現2次呢?異或的性質 任何數字和...

如何找出陣列中只出現一次的數字

問題描述 乙個整型陣列裡除了乙個數字之外,其他數字都出現了兩次。找出這個只出現1 次的數字。要求時間複雜度是o n 空間複雜度是o 1 用異或滿 換律來做這道題目 system.out.println 4 7 3 system.out.println 4 7 4 7 system.out.print...