【异或的巧妙使用】求只出现一次的数字
发布日期:2021-05-20 01:26:05 浏览次数:21 分类:精选文章

本文共 309 字,大约阅读时间需要 1 分钟。

题目要求我们找出一个没有重复出现两次的整数数。已知数组中的其他数字都恰好出现两次。我们可以通过异或操作来解决这个问题,而无需额外空间。

思路:

  • 初始化一个变量result为0。
  • 遍历数组中的每个数,将当前数值一一异或到result中。
  • 累积异或的结果,最后的result即为唯一出现一次的数。
  • 解析:

    异或操作对每个数计算两次会相互抵消。例如,两个相同的数相互异或结果为0。唯一出现一次的数只会被异或一次,从而保留下来。因此,通过遍历所有数并进行异或操作,最终结果即为所寻找的唯一数。

    步骤:

    • 初始化result为0。
    • 对于数组中的每个数,将num异或到result中。
    • 遍历完成后,result即为唯一出现一次的数。
    上一篇:【LeetCode - 马化腾】第一次看到马总的代码
    下一篇:【注意事项】C编程中从txt文件中读取浮点型数据

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2025年05月06日 04时48分37秒