Mutual Recursion Question

825 views Asked by At

How do I change two functions that are Mutual Recursive to each other to make them into a linear recursion? Do I have to have both the methods in a single method?

1

There are 1 answers

0
aioobe On BEST ANSWER

You should be able to simply "inline" the implementation of the second method, into the first method.

That is,

public static void methA() {
    // snippet 1

    methB();

    // snippet 2
}

public static void methB() {
    // snippet 3

    methA();

    // snippet 4
}

becomes

public static void methAB() {
    // snippet 1

    // snippet 3

    methAB();

    // snippet 2

    // snippet 4
}

If the second method is long, and called from multiple points in the first method, it may get messy though.