Java 检查行和列顺序的递归布尔方法

Java 检查行和列顺序的递归布尔方法,java,Java,我尝试在java中使用布尔递归方法来测试int[][]m中的所有行的顺序是否与列相同。 唯一的要求是m必须是一个平方矩阵。 例如: 1 2 6 2 5 7 4 8 9 感谢要使用递归解决此问题,您必须检查遍历数组并检查条件 static int[][] q; public static boolean check(int a, int b, int last) { if (b >= (q.length - 1) && a >= (q[0].length -

我尝试在java中使用布尔递归方法来测试int[][]m中的所有行的顺序是否与列相同。 唯一的要求是m必须是一个平方矩阵。 例如:

1 2 6

2 5 7

4 8 9


感谢

要使用递归解决此问题,您必须检查遍历数组并检查条件

static int[][] q;

public static boolean check(int a, int b, int last) {
    if (b >= (q.length - 1) && a >= (q[0].length - 1)){
        if (q[a][b] < last)
            return true;   //last element
        else
            return false;  //last element false!
    }
    if (b == (q.length - 1))   //check if at end of row
        return check(a + 1, 0, 0);  //start at 0 for last and 0 for b, iterate a
    if (q[a][b] <= last)    //check condition (q[a][b] <= last) returns false
        return false;
    return check(a, b + 1, q[a][b]); //check next element
}
static int[][]q;
公共静态布尔检查(int a、int b、int last){
如果(b>=(q.length-1)和&a>=(q[0].length-1)){
如果(q[a][b]<最后一个)
返回true;//最后一个元素
其他的
return false;//最后一个元素false!
}
if(b==(q.length-1))//检查是否在行的末尾
返回检查(a+1,0,0);//最后一次从0开始,b从0开始,迭代a

if(q[a][b]您应该浏览整个教程并阅读帮助中心。您目前的尝试结果是什么?您只是想确保数字按顺序排列吗?@Tom总是这样false@imbcosta它必须是递归吗?嵌套for循环应该确保其顺序。对我来说不起作用。
lim的初始值应该是多少它
?检查main方法中的(0,0,0)。例如,返回OPs的
false
。这个问题没有编辑,也没关系。他的示例符合要求,应该返回
true
。让我们来看看。