package com.abuge;
import java.util.Arrays;
/**
* 需求:
* 给定一个整型数组,只有一个元素出现了一次,其它每个元素出现两次,找出这个元素,要求时间复杂度为O(n),不用辅助内存
* @author AbuGe
*
*/
public class Solution
{
public int singleNumber(int[] A)
{
int len = A.length;
//处理单个元素的情况
if(len == 1)
return A[0];
//将数组排序
Arrays.sort(A);
for(int i = 0; i < len; i = i + 2)
{
//处理数组末尾越界情况
if(i == len - 1)
return A[i];
if(A[i] == A[i + 1])
continue;
return A[i];
}
return 0;
}
}
LeetCode005:SingleNumber
最新推荐文章于 2014-08-21 15:23:07 发布