当前位置: 首页 > 面试题库 >

在数组中查找非重复元素

辛可人
2023-03-14
问题内容

我被困在以下程序中:

我有一个输入整数数组,其中只有一个非重复数,例如{1,1,3,2,3}。输出应显示非重复元素,即2。

到目前为止,我执行了以下操作:

public class Solution {

    public int singleNumber(int[] arr){
        int size = arr.length;
        int temp = 0;
        int result = 0;
        boolean flag = true;
        int[] arr1 = new int[size];

        for(int i=0;i<size;i++){
            temp = arr[i];
            for(int j=0;j<size;j++){
                if(temp == arr[j]){
                    if(i != j)
                    //System.out.println("Match found for "+temp);
                    flag = false;
                    break;
                }
            }
        }
        return result;
    }

    public static void main(String[] args) {

        int[] a = {1,1,3,2,3};
        Solution sol = new Solution();

        System.out.println("SINGLE NUMBER : "+sol.singleNumber(a));
    }
}

最好限制阵列中的解决方案。避免使用集合,地图。


问题答案:

由于几乎可以肯定这是一种学习练习,并且由于您非常接近正确完成它,因此需要进行以下更改才能使其正常工作:

  • 将声明flag __移到 外部循环 内部 -需要将标志设置为true外部循环的每次迭代,并且外部循环以外的任何地方都不会使用该标志。
  • 检查flag内部循环完成时 -如果flag遗体true,你已经找到了唯一的编号; 把它返还。


 类似资料:
  • 问题内容: 如何在数组中查找重复元素?我有一组电话号码,因此在电话号码中,我应该从右侧到左侧开始搜索,并找到相似的6个整数。那我应该把它们打印出来。 问题答案: 要查找重复项,可以按电话号码建立交叉引用,然后将其过滤为仅重复项。例如,考虑: 在Swift 4中,您可以使用以下命令构建交叉引用字典: 要么 然后,找到重复项: 显然,请使用对您有意义的任何模型类型,但是上面的模型使用以下类型: 有很多

  • 问题内容: 假设我有一个整数的NumPy数组,如下所示: 我想找到数组的开始和结束索引,其中值的值大于重复的x倍(例如5倍)。因此,在上述情况下,其值为22和6。重复的22的开始索引为3,结束的索引为8。重复6相同。Python中是否有特殊的工具对您有所帮助?否则,我将遍历数组索引以获取索引,并将实际值与前一个进行比较。 问候。 问题答案: 使用@WarrenWeckesser在此处给出的和方法来

  • 所以这个问题以前被问过,但我的情况有点不同,因为我已经尝试了这个网站中建议的所有解决方案,我有一个多提及数组: 我还有另一个小数组: 我只想找到与这个“dup”在同一行的“original”。到目前为止,我尝试了查找、过滤和grep,但这些都没有解决我的问题。 我尝试过的代码:

  • 本文向大家介绍JS查找数组中重复元素的方法详解,包括了JS查找数组中重复元素的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS查找数组中重复元素的方法。分享给大家供大家参考,具体如下: JS的数据类型有一个数组。今天我们就来谈谈对数组的一种处理。相信很多人都遇到过从数组中查找出不重复的元素,但是我遇到的却是从数组中查找出重复的元素。 从js数组中查找出不重复的元素的方法有很多,

  • 问题内容: 我现在用来检查此功能的函数如下: 有用。我正在寻找的是是否有更好的方法来做到这一点。 问题答案: ECMAScript 2016 包含一种专门用于解决问题的数组方法,因此现在是首选方法。 _从2018年7月开始,如果您需要支持IE,则可以在polyfill中使用几乎所有 主流 浏览器。 编辑:请注意,如果数组中的项目是一个对象,则返回false。这是因为相似的对象是JavaScript