亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

面試中遇到的一道算法題

面試中遇到的一道算法題

繁華開滿天機 2018-08-01 17:22:41
有一堆數,其中有兩個數出現了一次,其他的數都出現了兩次。怎樣將這兩個只出現一次的數找出來?排除打表,統計外有什么更為高效的方法。
查看完整描述

3 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

1先把所有數字 做 異或操作 得到數字 S
2 從高到低位檢查 S 的 bit 找到第一個 1 
3 檢查所有數字 根據 這個bit位是1 還是 0 把 原來的數組劃分為 兩個
4 對每個數組 ,把數組內的數字做 異或操作。分別得到數字 A ,B
5 數字 A ,B 即為所求

時間復雜度 O(n)
空間復雜度 O(1)


查看完整回答
反對 回復 2018-08-04
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

應該可以用桶排序

查看完整回答
反對 回復 2018-08-04
  • 3 回答
  • 0 關注
  • 837 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號