码迷,mamicode.com
首页 > 编程语言 > 详细

Single Number 数组中除了某个元素出现一次,其他都出现两次,找出这个元素

时间:2014-10-21 22:53:06      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   ar   for   sp   div   on   

Given an array of integers, every element appears twice except for one. Find that single one.

Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

数组中除了某个元素出现一次,其他都出现两次,找出只出现一次的元素。

一个数字和自己异或 结果为 0,一个数字与0异或 结果还为它自己

比如数组:[6,6,3]  ,6和6异或为0,0与3异或为3,因此将数组中所有的元素异或一遍即为最终的结果:

 1 public class Solution {
 2     public int singleNumber(int[] A) {
 3         
 4          int n = A.length;
 5          int result = 0;
 6          
 7          for(int i = 0 ; i < n ; i ++)
 8             result ^= A[i];
 9             
10          return result;
11     }
12 }

 

Single Number 数组中除了某个元素出现一次,其他都出现两次,找出这个元素

标签:style   blog   color   io   ar   for   sp   div   on   

原文地址:http://www.cnblogs.com/fanchangfa/p/4041606.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!