Java 2D阵列 - 检测重复值

时间:2013-09-10 00:07:45

标签: java arrays multidimensional-array duplicates repeat

检测2D数组是否具有重复/重复值的最简单/最简单/最有效的方法是什么?

e.g。 2D阵列:

{{2, 17, 4, 5} {3, 2, 34 9}}

此矩阵具有多个“2”值。

如果是这种情况,我想将布尔值设置为true。

提前致谢!

1 个答案:

答案 0 :(得分:3)

我认为你在这里做的最好的是O(n),因为在你检查它之前你不会知道最后一个元素是否重复。这是一个想法:

拥有Set个值。迭代2d数组,并为每个元素执行此操作:

if (!set.add(element))
   // a duplicate was found!

这是有效的,因为Set.add返回“如果此集合尚未包含指定元素,则返回true”