昨天我在求职面试中做了一个关于 codility 的测试。这是第二个问题,我仍然想不出解决方案。您必须在不删除或添加行的情况下找到代码中的错误。我添加了一个 while 循环,它编译得很好,但没有太大变化。任何解决方案?import java.util.*;class minimum { int minimum(int[] A, int[] B) { int n = A.length; int m = B.length;; Arrays.sort(A); Arrays.sort(B); int i = 0; for (int k = 0; k < n; k++) { if (i < m - 1 && B[i] < A[k]) i += 1; if (A[k] == B[i]) return A[k]; } return -1; }}
1 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
假设 a 和 b 是您的整数数组,那么您可以使用如下代码段:
int commonMin = Integer.MAX_INTEGER;
for (int i=0; i<b.length; i++) {
if (Arrays.asList(a).contains(b[i])) {
if (b[i] < commonMin){
commonMin = b[i];
}
}
}
System.out.print(commonMin);
添加回答
举报
0/150
提交
取消