day93(2.22)——leetcode面试经典150

137. 只出现一次的数字 II

137. 只出现一次的数字Ⅱ

题目:

题解:

java 复制代码
class Solution {
    public int singleNumber(int[] nums) {
        int res = 0;
        //逐位计算,只出现一次的元素必定是所有数的1之和一定不是3的倍数,所以可以直接得到其二进制
        for(int i=0;i<32;i++) {
            int bitSum = 0;
            for(int n : nums) {
                bitSum+=(n >> i) & 1;
            }
            if(bitSum%3 != 0) {
                res |= (1<<i);
            }
        }
        return res;
    }
}
相关推荐
故事和你915 分钟前
蓝桥杯-2025年C++B组国赛
开发语言·软件测试·数据结构·c++·算法·职场和发展·蓝桥杯
Lzh编程小栈21 分钟前
数据结构与算法之队列深度解析:循环队列+C 语言硬核实现 + 面试考点全梳理
c语言·开发语言·汇编·数据结构·后端·算法·面试
明灯伴古佛1 小时前
面试:什么是可重入性?为什么 synchronized 是可重入锁?
java·jvm·面试
@atweiwei2 小时前
Go语言并发编程面试题精讲(下)
面试·golang·并发·channel
@atweiwei2 小时前
Go语言并发编程面试题精讲(上)
java·开发语言·面试·golang·channel
We་ct3 小时前
JS手撕:性能优化、渲染技巧与定时器实现
开发语言·前端·javascript·面试·性能优化·定时器·性能
小肝一下3 小时前
每日两道力扣,day4
c++·算法·leetcode·职场和发展
明灯伴古佛4 小时前
面试:synchronized用过吗,其原理是什么
面试·职场和发展
Linux猿4 小时前
AI产品经理面试题65道 | 附PDF
人工智能·面试·产品经理·面试题·面试题目·ai产品经理面试题
我真会写代码4 小时前
MySQL高频面试题(含详细解析):从基础到高级,备战面试不踩坑
数据库·mysql·面试