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>i)&1;
            }
            res+=(sum%3)<

 

转载于:https://www.cnblogs.com/xidian2014/p/8724660.html

你可能感兴趣的:(java)