没思路。网上找到的。

1.

将每一个int看成32位数,统计每一位出现的次数对3取余,所以需要开辟一个32大小的数组来统计每一位出现的次数

2.

对第一种思路进行简化,模拟3进制:

three  two  one

0    0    1  表示出现了1个1

0    1    0  表示出现了2个1

0    1    1  表示出现了3个1.此时我们需要将其转化成三进制的:

1    0    0  并将后2位归零。

故而

two = (one & A[i] ) | two  已有1个1,又来1个1,则该位取1;或者本来就有2个1

one = one ^ A[i]      当前没有1,来了个1;或者本来就有1,来了个0

three = two & one;

two = two & (~three)

one = one & (~three)  如果已有3个1,则three为1,且 one 和 two 归零

原文地址

转载于:https://www.cnblogs.com/flowingcloud/p/5737597.html

leetcode 137[转]相关推荐

  1. 【异或】LeetCode 137. Single Number II

    LeetCode 137. Single Number II Solution1:不会做,抄的 博客转载自:http://www.cnblogs.com/grandyang/p/4263927.htm ...

  2. LeetCode 137. Single Number II--三次异或消除相同的数--C++,Python解法

    题目地址:Single Number II - LeetCode Given a non-empty array of integers, every element appears three ti ...

  3. Leetcode #137 Single Number II

    题目链接:https://leetcode.com/problems/single-number-ii/ 题意表明有一个数字出现了一次,其他数字出现了三次,那么实现一个模3的计数器即可. 1 clas ...

  4. LeetCode 137.Single Number II 只出现一次的数字 II

    题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: ...

  5. Leetcode 137. 只出现一次的数字 II 解题思路及C++实现

    解题思路: 分别统计32位上1的个数tmp,然后对tmp进行对3求余,就能将出现三次的数去掉.最后通过 tmp<<i 将这一位的结果加到res上. class Solution { pub ...

  6. Leetcode 137. Single Number II JAVA语言

    1 2 3 Given an array of integers, every element appears three times except for one, which appears ex ...

  7. leetcode 137. 只出现一次的数字 II(位运算)

    给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 .请你找出并返回那个只出现了一次的元素. 示例 1: 输入:nums = [2,2,3,2] 输出:3 示例 2: ...

  8. LeetCode 137. 只出现一次的数字 II

    思路:讨论组有大佬想到了设计电路问题,即用两位二进制来表示某个数出现的次数,当出现3次时,置为0: 但没理解透彻  还不还扩展,这里介绍另一位大佬的思路. 由32位二进制数表示结果,从第一位开始计算, ...

  9. LEETCODE 137.Singel Number ii

    Given an array of integers, every element appears three times except for one. Find that single one. ...

最新文章

  1. 微软2012实习生笔试题及答案(望讨论)
  2. 为学Android,我看了这些书
  3. 用sp_addlinkedserver建立链接服务器(sql server2008中通过测试)
  4. java string 前缀匹配_字符串前缀和后缀匹配
  5. 记一次 IIS 7.0 身份验证相关的问题解决
  6. 团队二阶段冲刺个人工作总结2
  7. win10安装oracle12c注意事项,win10系统安装oracle 12c出现ins-30131错误的修复办法
  8. 对工作生活的一点感悟
  9. 四.激光SLAM框架学习之A-LOAM框架---项目工程代码介绍---2.scanRegistration.cpp--前端雷达处理和特征提取
  10. 小鹏汽车北京车展发布免费加电、电池租赁计划以及低空飞行汽车
  11. The world’s largest
  12. 毕啸南专栏 | 对话澜亭资本创始人刘炯:2018 AI创投领域如何“去伪存真”
  13. 20171018 在小程序页面去获取用户的OpenID
  14. 疯狂Java讲义笔记汇总
  15. Django 清空数据库的所有表
  16. SoilGrid 250米土壤质地数据集
  17. 计算机上分辨率怎么设置在哪里设置方法,Win7分辨率怎么调 Win7屏幕分辨率设置教程...
  18. java 毫秒转分钟和秒_将毫秒转换为分钟和秒的java程序
  19. python卷积神经网络预测股价_利用神经网络预测股票市场
  20. Matlab画根轨迹

热门文章

  1. 经纬度,墨卡托等坐标转换
  2. 修改ElementUI样式的几种方式
  3. AMQP Connection 127.0.0.1:5672] ERROR [o.s.a.rabbit.connection.CachingConnectionFactory] CachingConn
  4. mysql 索引过长1071-max key length is 767 byte
  5. Vue中使用定时器setInterval和延迟执行setTimeout
  6. qt的一些参数配置 win和linux
  7. 2019-06-02 Java学习日记之多线程上
  8. mysql事务隔离级别及传播机制
  9. sublime text3:呼出安装插件的快捷键
  10. android sqlite 数据库中使用的类型