数组中只出现一次的数(1)(C++)
来源:互联网 发布:pr淘宝视频 编辑:程序博客网 时间:2024/06/06 00:25
题目:
一个整型数组里除了1个数字之外,其他的数字都出现了两次。请写程序找出这个只出现一次的数字。
思路:
强调数字出现的次数,而且是偶数次。这时候可以考虑利用位运算的 "异或" 实现。
2个相同的数异或=0
因此,将数组所有元素异或得到的结果即为只出现一次的那个数。
贴代码:
#include <iostream>#include <vector>using namespace std;// 找出数组中只出现一次的数void FindNumsAppearOnce(vector<int> data, int* num) {if (data.size() == 0){return;}*num = 0;for(unsigned int i = 0; i < data.size(); ++i){*num ^= data[i];}}int main(void){int a[] = {1,1,2,2,3};vector<int> v(a, a + 5);int num;FindNumsAppearOnceVer1(v, &num);cout<<"num = "<<num<<endl;return 0;}
0 0
- 数组中只出现一次的数(1)(C++)
- 数组中只出现一次的数(2)(C++)
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组中只出现一次的数
- 数组------找出数组中只出现一次的两个数
- 找出数组中两个只出现一次的数
- 求一个数组中只出现一次的两个数
- 寻找数组中只出现一次的数
- 151201mac常用快捷键
- HPU 1248: HH的军训【容斥原理】
- iOS开发之小文件下载、大文件下载、断点下载
- android中Scrollview中套ListView,高度超出屏幕,listview无法滑动问题
- 单例模式
- 数组中只出现一次的数(1)(C++)
- php 文件读取和写入详细介绍例子
- 学习JQuery的$.Ready()与OnLoad事件比较[转]
- org.springframework.orm.hibernate3.support.OpenSessionInViewFilter详解
- 开灯问题
- 用AndroidStudio开发cocos2d-x 项目
- [delve][web]如何实现网站顶部状态条的外部引用
- JS中格式化日期
- canvas 学习(一)