Recursion(再帰呼び出し)とは、ある関数内でその関数自身を呼び出すことを指します。またBacktrack(バックトラック法)というのは再帰呼び出しを応用することによって、正しい解を得るまで可能な組み合わせを試していく方法を指します。まずはそもそも再帰呼び出しとは何かについて見ていきましょう。
再帰呼び出しとはある関数内でその関数自身を呼び出すことを指します。例えば以下のようなコードがこれに当たります。
# 再帰関数recursion
def recursion(x):
# recusion関数内で再びrecursion関数を呼び出している
return recursion(x-1)
ではこのコードを実行したらどうなるのかを考えてみましょう。例えばrecursion(5)と実行したらどうなるでしょうか?