1

相互再帰について読んでいました.ほぼすべての資料で、整数が偶数か奇数かを判断する問題の例は?

int is_even(unsigned int n)
{
    if (n==0) return 1;
    else return(is_odd(n-1));
}

int is_odd(unsigned int n)
{
    return (!iseven(n));
}

明らかに、上記の問題は、モジュラス演算子を使用して簡単に解決できます。

他の例は、人が女性か男性かを調べる問題でした。これも、再帰を使用しないでより簡単な方法で解決できます。

相互再帰は単なる理論的なものですか、それとも他の手法を使用するよりもソリューションを簡単にするために実際に使用できる場所はありますか?

そのような例を挙げて私を助けていただけませんか?

4

3 に答える 3

3

相互再帰はあまり一般的ではありませんが、便利な場合があります。「再帰降下」メソッドを使用してテキストを解析することは、それを見つけることができる実用的な設定の 1 つです。

http://en.m.wikipedia.org/wiki/Recursive_descent_parser

于 2013-07-15T06:43:57.107 に答える