【发布时间】:2018-02-01 13:06:16
【问题描述】:
我正在尝试用 Java 开发一种算法,如果给定两个矩阵(比如 a 和 b),如果 a 和 b 中至少有一行相同,则返回 true .
这是我尝试的方法:
public static boolean check_row(int a[][], int b[][]){
boolean check = false;
for(int i = 0; i < a.length; i++){
for(int j = 0; j < b[0].length; j++){
if(a[i][j] == b[i][j])
check = true;
}
}
return check;
}
这是一个简单的主要内容:
public static void main(String[] args){
int a[][] = {{1,2}, {3,4}};
int b[][] = {{1,2}, {7,8}};
System.out.println(check_row(a, b));
}
在这里我得到true,因为两个矩阵的第一行是相同的。
但是,如果我将矩阵初始化更改为:
int a[][] = {{1,2}, {3,4}};
int b[][] = {{5,6}, {1,2}};
我得到false,即使a 的第一行和b 的第二行相同。
我应该如何修改方法以便在这两种情况下都获得true?
【问题讨论】: