找出数组中出现奇数次的元素
来源:互联网 发布:淘宝的试用中心在哪 编辑:程序博客网 时间:2024/05/01 10:05
不知道什么时候能用到这个算法,权当练习,其实也是应用数学基础知识的算法。
/**********************************************************************************************************************
2.找出数组中出现奇数次的元素
问题描述:现在有一个整数数组arr,其中的元素只有一个元素出现奇数次,请找出这个元素。
解决方案:对于任意一个数k,有k^k = 0,k^0 = k,所以将arr中所有元素进行异或,那么出现次数为偶数的元素异或后都变成了0,
出现次数为奇数的元素异或后得到元素本身。下面写代码就很容易了~~时间复杂度是O(n)。
*************************************************************************************************************************/
int getoddelements(int arr[], int length){int elements = 0;for(int i=0; i<length; i++){elements ^= arr[i];}return elements;}
- 找出数组中出现奇数次的元素
- 找出数组中出现奇数次的元素
- 找出数组中出现奇数次的元素
- 找出数组中出现奇数次的元素<异或的应用>
- 如何找出数组中出现次数为奇数次的唯一元素
- 在数组中查找出现奇数次的元素
- 找出数组中唯一出现k次的元素x
- 【面试题】数组中有两个元素出现了奇数次,其他元素出现了偶数次。找出这两个元素
- 找数组中奇数次的元素
- 互联网面试题:一个数组中找出三个出现奇数次的数字中的一个
- 互联网面试题:一个数组中找出三个出现奇数次的数字中的一个
- 从数组中找出出现奇数次的那个数 Python版
- 某数组中两个数出现奇数次,剩余的出现偶数次,找出这两个数
- 在N个数中找出出现奇数次的数
- N个元素的数组中找出出现多于N/2次的数(主元素)
- 找出出现奇数次的数
- 程序员面试题精选——找出数组中两个只出现一次(奇数次)的数字
- 奇数个元素,数组元素成对出现,找出只出现一次的数
- Floyd 算法原理
- HDU-1008 电梯啊
- iOS开发——图片转PDF的实现方法
- 通过Javascript获得页面元素的字体大小
- ubuntu 12.04 登录命令行模式,修改普通用户密码
- 找出数组中出现奇数次的元素
- java时间格式化
- magento整合js css资源
- spring3.1 mvc入门讲解
- HDU 2108 Shape of HDU(判断给定的图形是否是凸多边形)
- 使用Pushlet实现后台信息推送(二)
- Gearman vs Beanstalkd
- iOS笔记——遍历Tableview
- Python 100例——第十章----定理与猜想