2020.10.27ホームPythonPythonで再帰関数を使って組み合わせの計算をするPythonのプログラミングで再帰関数を使ったプログラムはたくさん考えられますが、傑作と思われるものを見付けました。それは組み合わせ、つまりn人からr人を選ぶ時の組み合わせを計算するもの(nCr:combination)です。5人から3人選ぶ場合、$_3C_5=10$と10通りになります。_{n-1}C_{r-1}$になります。これらの2つは同じことを言っているので等しくなります。そこで次のような公式があります。comb(5,3)次に、n人からr人を選ぶときに、ある特定の人に注目してその人が選ばれる場合の組み合わせの数と、選ばれない場合の組み合わせの数を合計すればよいわけです。そこで次のような公式があります。comb_2(5,3)アルゴリズムとしては必ずしも効率が良いとは言えませんが、再帰関数の練習としてはとても興味深いものがあります。