给出2*n + 2个的数字。除当中两个数字之外其它每一个数字均出现两次,找到这两个数字。

您在真实的面试中是否遇到过这个题?

Yes
例子

给出 [1,2,2,3,4,4,5,3]。返回 1和5

挑战

O(n)时间复杂度,O(1)的额外空间复杂度

标签 Expand

相关题目 Expand

分析:这样的抖灵巧的题要是面试官面我,我肯定会批判一番的!把全部数亦或下,得到的数能够求出两不同数的亦或值,这样能够找到一个位,在该位上能够把全部数分成两部分。没部分能够套用之前的“全部数都出现两次,除了当中一个数”的代码。

代码:

class Solution {
public:/*** @param A : An integer array* @return : Two integers*/vector<int> singleNumberIII(vector<int> &A) {// write your code hereint k = findFirstDiffBit(A);int ret1 = findOne(A, k, true);int ret2 = findOne(A, k, false);vector<int> ret;ret.push_back(ret1);ret.push_back(ret2);return ret;}int findFirstDiffBit(vector<int>& A){int x = 0;for (auto i : A)x ^= i;for (int i = 0;i<32;i++){if ((1 << i)&x)return i;}}int findOne(vector<int>&A, int k, bool first){int ret = 0;for (auto x : A){if (first){if ((1 << k)&x)ret ^= x;}else{if (((x>>k)&1) == 0)ret ^= x;}}return ret;}
};

LintCode-落单的数 III相关推荐

  1. lintcode 中等题:Single number III 落单的数III

    题目 落单的数 III 给出2*n + 2个的数字,除其中两个数字之外其他每个数字均出现两次,找到这两个数字. 样例 给出 [1,2,2,3,4,4,5,3],返回 1和5 挑战 O(n)时间复杂度, ...

  2. 找出落单的元素 java,lintcode练习 - 落单的数(落单的数 落单的数 II 落单的数 III)...

    落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 样例 给出 [1,2,2,1,3,4,3],返回 4 挑战 一次遍历,常数级的额外空间复杂度 解题思路 ...

  3. lintcode 落单的数(位操作)

    题目1 落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 链接:http://www.lintcode.com/zh-cn/problem/single ...

  4. 落单的数(落单的数 落单的数 II 落单的数 III)

    落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 样例 给出 [1,2,2,1,3,4,3],返回 4 挑战  一次遍历,常数级的额外空间复杂度 思路1 ...

  5. lintcode落单的数

    落单的数 描述 笔记 数据 评测 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 您在真实的面试中是否遇到过这个题? Yes 样例 给出 [1,2,2,1,3, ...

  6. 领扣LintCode算法问题答案-83. 落单的数 II

    领扣LintCode算法问题答案-83. 落单的数 II 目录 83. 落单的数 II 描述 样例 1: 样例 2: 题解 鸣谢 83. 落单的数 II 描述 给出 3 * n + 1 个非负整数,除 ...

  7. 领扣LintCode算法问题答案-82. 落单的数

    领扣LintCode算法问题答案-82. 落单的数 目录 82. 落单的数 鸣谢 82. 落单的数 给出 2 * n + 1个数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 样例 1: ...

  8. LinCode落单的数

    easy 落单的数 查看执行结果 60% 通过 给出2*n + 1 个的数字,除当中一个数字之外其它每一个数字均出现两次.找到这个数字. 您在真实的面试中是否遇到过这个题? Yes 例子 给出 [1, ...

  9. 落单的数IV --- lintcode 824

    点击打开原题 已知: 给定一个特殊的数组,其中只包含一个单独的数,其他的数字都是成双且相互靠近出现的.求出这个单独的数. 思路: 先排除特殊情况,如果第一个数和第二个数不等,那么直接返回第一个数,倒数 ...

最新文章

  1. 2019中南大学考研计算机考试,中南大学2019年全国硕士研究生入学考试《计算机网络》考.PDF...
  2. 深度学习核心技术精讲100篇(三十七)-利用Contrastive Learning对抗数据噪声:对比学习在微博场景的实践
  3. (转)青春有限,走红有年
  4. 关于 jMeter 结果报表里的 APDEX (Application Performance Index)
  5. Avalonia跨平台入门第十九篇之语音播放
  6. Oracle 数据库中较为复杂或典型的 SQL 语句的解读
  7. java 在底图上绘制线条_使用底图和geonamescache绘制k表示聚类
  8. oracle .dbf文件过大_学习这篇Oracle数据库文件坏块损坏的恢复方法,拓展你的知识面...
  9. 工程实践:基于规则模式的军事和医药领域知识图谱问答快速实现
  10. 华为鸿蒙os正在国外小规模测试,华为鸿蒙OS正小规模测试
  11. String StringBuffer StringBuilder的异同
  12. html控制手机回退键,向日葵手机控制手机全程指导
  13. vscode顶部菜单栏不见了,怎么办?
  14. Android自定义view绘制卡顿,Android自定义View实现绘制虚线的方法详解
  15. 虚拟机Hyper-V的安装以及使用教程
  16. 由于找不到vcruntime140_1.dll无法继续执行代码,vcruntime140_1.dll丢失如何修复
  17. 【ThreeJS基础教程-初识Threejs】1.ThreeJS的HelloWorld
  18. 伟大的领导者要做到四件事(整理自《领导力精要》史蒂芬.柯维)
  19. php 射影定理,中考数学复习:射影定理所涉基本图形,弦切角概念,垂径定理...
  20. 转载 PCIe学习(三):PCIe DMA关键模块分析之二

热门文章

  1. 嵌入式软件常见笔试面试题总结 .
  2. 面向对象的4个基本特征
  3. pxe安装系统 ip获取错误_【图说】消防系统安装典型错误举例
  4. openresty完全开发指南_FDA拟修订群体药代动力学指南:医药商需要了解些什么?...
  5. 自动运维_无Agent自动化运维平台spug
  6. mysql k,mysql事务有关概念-怀念K.Dures
  7. composer php中如何执行,php中composer如何实现类的自动加载(示例讲解)
  8. Linux qt 更新,Qt 5.15 Beta 2 发布,Qt 6之前的最后一个重大更新
  9. mysql+地图网格数据下载_echarts 中国各省市 echarts地图数据,含世界地图
  10. pro调用python libs_使用WingPro 7 设置Python路径的方法