137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...
生活随笔
收集整理的這篇文章主要介紹了
137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給定一個整型數(shù)組,除了一個元素只出現(xiàn)一次外,其余每個元素都出現(xiàn)了三次。求出那個只出現(xiàn)一次的數(shù)。
注意:
你的算法應(yīng)該具有線性的時間復(fù)雜度。你能否不使用額外的內(nèi)存來實(shí)現(xiàn)?
詳見:https://leetcode.com/problems/single-number-ii/description/
Java實(shí)現(xiàn):
建立一個32位的數(shù)組,來統(tǒng)計每一位上1出現(xiàn)的個數(shù),如果某一位上為1的話,那么如果該整數(shù)出現(xiàn)了三次,對3去余為0,把每個數(shù)的對應(yīng)位都加起來對3取余,最終剩下來的那個數(shù)就是單獨(dú)的數(shù)字。
參考:https://www.cnblogs.com/springfor/p/3870863.html
https://www.cnblogs.com/grandyang/p/4263927.html
class Solution {public int singleNumber(int[] nums) {int res=0;for(int i=0;i<32;++i){int sum=0;for(int j=0;j<nums.length;++j){sum+=(nums[j]>>i)&1;}res+=(sum%3)<<i;}return res;} }?
轉(zhuǎn)載于:https://www.cnblogs.com/xidian2014/p/8724660.html
總結(jié)
以上是生活随笔為你收集整理的137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【oracle】oracle经典sql,
- 下一篇: 【基础】使用cookies,实现免登陆(