美文网首页考研数据结构
找出只出现一次的元素

找出只出现一次的元素

作者: 飞白非白 | 来源:发表于2018-12-04 11:29 被阅读0次

// 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次,
// 请找出这两个数字
// 一个数字异或它自己结果为0,异或0结果为它自己即a^a=0,a^0=a,
// 且异或满足a^b^c=a^(b^c)。因此我们可以设置一个ret异或每个数组
// 元素,最后相同的都抵消为0,那个唯一的数字异或0为它自己即为答案。

int find_num_once(int a[], int n)
{
    int i = 0;
    int ret = 0;
    for (i = 0; i < n; i++) 
        ret ^= a[i];
    return ret;
}

相关文章

  • 找出只出现一次的元素

  • 找出只出现一次的元素

    问题描述:一个数组中只有两个数字是出现一次,其他所有数字都出现了两次 ,请找出这两个数字 算法思想:一个数字异或它...

  • leetcode-【只出现一次的数字】

    【只出现一次的数字】给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次...

  • 136-只出现一次的数字

    题目 给定一个非空整数数组,除了某个元素只出现一次意外,其余每个元素均出现两次。找出那个只出现一次的元素。要求: ...

  • Day64 只出现一次的数字

    给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素 https:...

  • 只出现一次的数字

    只出现一次的数字 题目: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现...

  • 只出现一次的数字

    给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你...

  • LeetCode 数组 只出现一次的数字

    给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你...

  • 136. 只出现一次的数字

    内容 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明...

  • leetcode-数组-只出现一次的数字|Single Numb

    给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 示...

网友评论

    本文标题:找出只出现一次的元素

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