Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 相互递归问题_Java_Recursion_Mutual Recursion - Fatal编程技术网

Java 相互递归问题

Java 相互递归问题,java,recursion,mutual-recursion,Java,Recursion,Mutual Recursion,如何将两个相互递归的函数更改为线性递归?我必须在一个方法中同时使用这两种方法吗?您应该能够简单地将第二种方法的实现“内联”到第一种方法中 就是 public static void methA() { // snippet 1 methB(); // snippet 2 } public static void methB() { // snippet 3 methA(); // snippet 4 } 变成 public static

如何将两个相互递归的函数更改为线性递归?我必须在一个方法中同时使用这两种方法吗?

您应该能够简单地将第二种方法的实现“内联”到第一种方法中

就是

public static void methA() {
    // snippet 1

    methB();

    // snippet 2
}

public static void methB() {
    // snippet 3

    methA();

    // snippet 4
}
变成

public static void methAB() {
    // snippet 1

    // snippet 3

    methAB();

    // snippet 2

    // snippet 4
}

如果第二个方法很长,并且在第一个方法中从多个点调用,它可能会变得很混乱。

也许您可以用一个简短的代码示例来说明您试图实现什么?您是如何在第一个位置实现相互递归的?