美文网首页
021-Single Number

021-Single Number

作者: Woodlouse | 来源:发表于2020-05-29 18:33 被阅读0次

描述

在一个整型数组中,只有一个元素是只出现一次,其他元素都是出现两次的,如何找到这一个只出现一次的元素。

分析

一,使用额外空间

借助字典这种数据结构,在遍历数组时,使用数组中的数值为key,数值出现的次数做为value,遍历完数组后再遍历构造的字典对象,即可找出只出现了一次的元素;

二,不使用额外空间

使用异或操作,只要出现偶数次的数值都可以清0。

实现

// Single Number
int singleNumber(int a[], int len)
{
    int num = 0;
    for(int i=0; i<len; i++) {
        num ^= a[i];
    }
    
    return num;
}

相关文章

网友评论

      本文标题:021-Single Number

      本文链接:https://www.haomeiwen.com/subject/mwztzhtx.html