【发布时间】:2011-08-14 15:41:39
【问题描述】:
我的代码
class Union {
//Search Function
static boolean search(int A[], int i) {
for (int k = 0; k < A.length; k++) {
if (A[k] == i) {
return true;
}
}
return false;
}
//union
static void union(int A[][], int B[][]) {
int i = 0;
int count = 0;
int C[] = new int[A.length + B.length];
for (; i < A.length; i++) {
if (!(search(B, A[i]))) {
C[count] = A[i];
count++;
}
}
for (; i < (A.length + B.length); i++) {
C[count] = B[i - A.length];
count++;
}
System.out.println("This is Union Of 2 D Array ");
System.out.println();
for (int k = 0; k < count; k++) {
System.out.println(C[k]);
}
System.out.println();
}
public static void main(String... s) {
union(new int[]{1, 1, 1, 4,}, new int[]{1, 4, 4, 4, 1, 2});
}
}
我正在使用此输出来查找二维数组的联合。但是我得到的输出是错误的。我不希望 2 在 java 中使用任何预定义的接口和方法。 我的回答应该是 {1,2,4}
示例
A= {1,2,3,3}
B={2,3,1,1}
c={1,2,3}
【问题讨论】:
-
您的代码似乎只有一维数组。二维数组在哪里?
-
如果我在这段代码中有错误,请纠正我
-
@Guarav_Java:当我们不知道您在寻找什么时,很难纠正您 - 但彼得是对的,您 只使用一维数组。请注意,数组类型变量的惯用声明是将所有类型信息放在一起:
int[] x而不是int x[]。此外,参数名称通常采用驼峰命名法。 -
一个二维数组需要二维,即
union(int[][] a, int[][] b),这就是它成为二维(二维)数组的原因。 -
@Gaurav_Java 请看我的回答:)
标签: java arrays multidimensional-array