真理只有一個,它不在宗教中,而是在科學中。 ---達芬奇數組
給定一個非空整數數組,除了某個元素只出現一次之外,其他每一個元素均出現兩次。找出那個只出現了一次的元素。微信
說明:大數據
示例:code
輸入: [2,2,1] 輸出: 1
因爲對時間複雜度和空間有限制,顯然不能進行兩次遍歷和另開闢空間,這塊考察位運算,相同的兩個數作異或運算,結果爲0,由於數組中除了一個元素只出現一次外,其餘元素都出現兩次,若是把全部的數都異或,相同的數字異或爲0,最後只剩下出現一次的數字,它和0異或,結果就是它自己。leetcode
Code:io
class Solution { public int singleNumber(int[] nums) { int num = 0; for(int i = 0; i < nums.length; i++){ num = num ^ nums[i]; } return num; } }
按期分享大數據與知識圖譜相關知識點:
class