【发布时间】:2013-10-07 10:21:44
【问题描述】:
我必须找出数组中是否有重复的数字,如果发现重复我需要-5分。到目前为止,这是我的代码:
for (int k = 0; k < arrNums2.length; k++)
{
for (int i = 0; i < arrNums2.length; i++)
{
if (arrNums2[k] == arrNumsCompare[i])
{
points = points - 5;
for (int j = 0; j < arrNums2.length; j++)
{
if (arrNums2[k] == arrNums2[j])
{
arrNums2[j] = 0;
}
}
}
}
}
【问题讨论】:
-
您的具体问题是什么?
-
排序这个数组,然后遍历它。如果邻居是平等的,你就有了一个重复。
-
@PradeepSimha - 我真的怀疑
Set是否可以在这种情况下使用。有一些与要完成的点相关的事情,以防发现重复。 Set 甚至不会让你知道它找到了重复项 -
那是 NOT A DUPLICATE,他有问题,需要解决。我在那里看不到。如果他得到一个现成的解决方案,对于一个与他的问题不同的问题,他将不会学到任何东西,也不会从错误中吸取教训。
-
你为什么要这么做
arrNums2[j]=0;?它是您的要求还是您的逻辑的一部分?
标签: java arrays collections duplicates