Java如何告诉我去过一个数组中的所有数字
所以我有一个包含正整数的N大小的数组A. 该阵列可能有许多重复,我想找到最短的距离去旅游阵列,并访问阵列中发生的每个数字Java如何告诉我去过一个数组中的所有数字
迭代从A [0]开始的数组的最佳方式是什么上。
到目前为止,我已经想出了将所有数字添加到一个集合中,以便我可以比较,如果我已经在那里。
例如下面的数组中的最短距离访问所有数字是5
Integer[] nums = { 2, 6, 7, 2, 3, 3, 1, 2 };
,所以我将它们添加到HashSet
Set<Integer> UniqueNums = new HashSet<>(Arrays.asList(nums));
这是我弄糊涂 我知道以下是错误的,它是唯一的psudocode,但我会做一些沿线
int count = 0; for(int i : nums)
{
if(UniqueNums.contains(i)
{
count ++;
}
}
回答:
你可以请试试....这只是一个伪代码。
int count = 0; int i =0;
while(i < nums.lnegth && UniqueNums.size() >0)
{
UniqueNums.remove (nums[i]);
i++;
}
Sysout("minimum length of array containing all unique element from starting " + i);
我在做什么 - >放置独特的元素后,我迭代数组并开始删除我在nums中访问过的元素。 当我有当时在NUMS访问的所有独特元素“UniqueNums”将是空的,它会终止循环
以上是 Java如何告诉我去过一个数组中的所有数字 的全部内容, 来源链接: utcz.com/qa/259090.html