查找数组中只出现一次的元素
来源:互联网 发布:图片做视频的软件 编辑:程序博客网 时间:2024/05/17 01:45
问题:已知一个特殊数组,数组中除去一个元素只出现一次之外,其他元素都出现了两次,现在要找出这个唯一一个只出现了一次的数据元素,并将其打印出来。
分析:利用异或运算的特殊性。例如A异或B得到C,C再与B异或则又会得到A,那么依照这个规律,将整个数组逐个元素异或,最后得到的结果既是该数组中仅出现了一次的元素。
以已知data[]数组为例:
#include <iostream>using namespace std;int data[20] = {1, 1, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 9, 9, 8};int FindNumber(int data[],int length){ if(length <2) return -1; int opXor = 0, i = 0; while(i <length) opXor ^= data[i++]; return opXor;}int main(){ int result = FindNumber(data, 20); cout << result; return 0;}
0 0
- 查找数组中只出现一次的元素
- 数组中只出现一次的元素
- Leetcode540. 二分查找找出数组中只出现一次的元素
- 找出一个数组中只出现过一次的元素
- 找数组中只出现一次的元素
- 找数组中只出现一次的元素--位运算
- 找出数组中只出现一次的元素
- Leetcode260. 找出数组中只出现一次的两个元素
- 查找数组中只出现一次的数字
- 查找数组中只出现一次的数
- 查找数组中三个只出现一次的数字
- 查找数组中只出现一次的数
- 查找数组中只出现一次的一个数
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- [iOS开发项目-2] 用户登录界面
- ViewController 的view的3种创建方式
- 错误经验截图
- iOS之代码规范
- Struts2——ModelDriven运用
- 查找数组中只出现一次的元素
- Mybatis 高级结果映射 ResultMap Association Collection
- tcp处理
- 枚举类型
- Linux + C + Epoll实现高并发服务器(线程池 + 数据库连接池)
- UCGUI编程三:背景窗口重绘
- CSS3中和动画有关的属性transform、transition 和 animation
- 安卓中多线程断点续传文件下载核心代码总结
- Mybatis中的#和$的区别