剑指offer-40

数组中只出现一次的数字

http://www.nowcoder.com/questionTerminal/e02fdb54d7524710a7d664d082bb7811

用容器记录出现过的数,出现第二次删除,最后留下两个,用set是因为它的查询时间比较快

import java.util.*;
public class Solution {
    public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) {
        Set<Integer> set = new HashSet<>();
        for(Integer a : array){
            if(set.contains(a)){
                set.remove(a);
            }else {
                set.add(a);
            }
        }
        int i =0;
        for(Integer a : set){
            if(i==0){
                num1[0] = a;
                i=1;
            }else {
                num2[0] = a;
            }
        }
    }
}
全部评论

相关推荐

在看牛客的社畜很积极:身高体重那一行信息去掉,学校那一行的信息放上面,找半天都没找到你是哪个学校什么专业的
点赞 评论 收藏
分享
10-10 01:10
已编辑
深圳大学 测试开发
面了100年面试不知...:六月到九月,四个项目一个实习,是魔丸吗
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务