leetcode(37).136. Single Number

来源:互联网 发布:jpg转换成pdf mac 编辑:程序博客网 时间:2024/06/14 17:04

题意:给定一个整数数组,有一个数只出现一次,其它数都出现两次,找出那个只出现一次的。

初步分析:
不喜欢异或什么的奇技淫巧,因为涉及到不重复,打算用set来做。

自然就出来一条思路:如果添加的数字已经有了,删除这个数字.

最后遍历完了以后剩下的那个就是我们要找的。

public class Solution {    public int singleNumber(int[] nums) {        HashSet<Integer> hs =new HashSet<>();        for(int num : nums)            if(!hs.add(num))                hs.remove(num);        return hs.iterator().next(); //set中的第一个也是唯一一个元素就是我们要找的    }}


0 0