數(shù)組中只出現(xiàn)一次的數(shù)字

微信圖片_20191223132546.jpg
class Solution:
    # 返回[a,b] 其中ab是出現(xiàn)一次的兩個(gè)數(shù)字
    def FindNumsAppearOnce(self, array):
        # write code here
        if len(array)<2:
            return None
         
        res = None
        for num in array:
            if res == None:
                res = num
            else:
                res = res ^ num
        count = 0
        while res % 2 == 0:
            res = res >> 1
            count += 1
        mask = 1 << count
        
        first = None
        second = None
        for num in array:
            if mask & num == 0:
                if first == None:
                    first = num
                else:
                    first = first ^ num
            else:
                if second == None:
                    second = num
                else:
                    second = second ^ num
        return first, second
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容