137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...
生活随笔
收集整理的這篇文章主要介紹了
137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個整型數組,除了一個元素只出現一次外,其余每個元素都出現了三次。求出那個只出現一次的數。
注意:
你的算法應該具有線性的時間復雜度。你能否不使用額外的內存來實現?
詳見:https://leetcode.com/problems/single-number-ii/description/
Java實現:
建立一個32位的數組,來統計每一位上1出現的個數,如果某一位上為1的話,那么如果該整數出現了三次,對3去余為0,把每個數的對應位都加起來對3取余,最終剩下來的那個數就是單獨的數字。
參考: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;} }?
轉載于:https://www.cnblogs.com/xidian2014/p/8724660.html
總結
以上是生活随笔為你收集整理的137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【oracle】oracle经典sql,
- 下一篇: 【基础】使用cookies,实现免登陆(