廖___ 2019-11-22 19:41 采纳率: 100%
浏览 227
已采纳

两个数组的交集,结果不对,大佬帮忙看一下错在哪

各位帮我这个菜鸟看看为什么结果不对图片说明

class Solution {
    public int[] add(int[] nums,int i){
        int[] num=new int[nums.length+1];
        for(int j=0;j<nums.length;j++)
            {num[j]=nums[j];}
        num[nums.length]=i;
        nums=num;
        return nums;
    }
    public int[] intersection(int[] nums1, int[] nums2) {
        int[] nums=new int[0];
        for(int i=0;i<nums1.length;i++)
            for(int j=0;j<nums2.length;j++){
                if(nums.length==0){
                    if(nums1[i]==nums2[j])
                            {
                            Solution solution=new Solution();
                            nums=solution.add(nums,nums1[i]);
                            }
                    }else{
                        for(int x=0;x<nums.length;x++)
                        {
                        if(nums1[i]==nums2[j]&&nums[x]!=nums1[i])
                            {
                            Solution solution=new Solution();
                            nums=solution.add(nums,nums1[i]);
                            }
                        }
                }
            }
        return nums;
    }
}

以下是结果

图片说明

  • 写回答

3条回答 默认 最新

  • 毕小宝 博客专家认证 2019-11-22 21:06
    关注

    用 HashSet 类型来判断,先将一个数组元素加入其中,然后遍历另一个数组,用 Set 的 contains 判断是否存在,如果存在,就是交集了,存储起来。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器