算法之只出现一次的数字

题目:

给定一个整数数组,除了某个元素外其余元素均出现两次。请找出这个只出现一次的元素。
示例 :输入:[2,2,1]输出:1

思路 :

用异或 ,0和任何数异或得其本身
1^1 = 0
1 ^ 1 ^ 2 = 2
1 ^ 1 ^ 2 ^ 2 ^ 3 = 3

答案:

class Solution {

    func singleNumber(_ nums: [Int]) -> Int {
        var i=0;

        nums.forEach{(num) in

            i=i^num;
        }
        return i;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。