LintCode问题图解-11

本文准备讲解1个简单的算法编程问题, 这个算法编程问题来自LintCode平台。不了解.LintCode平台的读者可以阅读笔者文章(在线编程平台推荐-LeetCode)。问题的英文版本描述如下:

Single Number III

Given 2*n + 2 numbers, every number occurs twice except two, find them.

Example

Given [1,2,2,3,4,4,5,3] return 1 and 5

单次出现的数

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

样例

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

该问题的标准算法需要用到位处理方案,对任何数字A而言 A 位异或 A  会将得到 0。现在公布1种不做位处理的算法方案。这种非位处理方案的缺点是速度较慢,阅读非位处理方案比较容易。好像用高级语言和机器语言做同样1个任务,高级语言有高级语言的优点,机器语言有机器语言的长处。


非位处理的算法
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,358评论 0 33
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,179评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,552评论 25 709
  • 由于要去赶明天早上七点的飞机,在一番思量后,我决定在机场过夜。假期里在房间里堕落许久,终究迎来了新生活。背着电脑,...
    孟德斯特阅读 1,612评论 0 0
  • 话说自己也从大学毕业了好多年了,多年的工作和社会阅历让我有了那么一小点点感慨。 那么大学生毕业是...
    不在彼岸只在海阅读 1,486评论 0 1

友情链接更多精彩内容