递归有两个重要的特点:
- 调用自身
- 必须要有结束条件
一个著名的汉诺拇问题
def hanoi(n, a, b, c): """ n等于0的时候终止 a,b,c 表示a经过b再经过c :param n: :param a: :param b: :param c: :return: """ if n > 0: hanoi(n - 1, a, c, b) print('从 %s 移动到 %s' % (a, c)) hanoi(n - 1, b, a, c) hanoi(3, 'A', 'B', 'C') """ 从 A 移动到 C 从 A 移动到 B 从 C 移动到 B 从 A 移动到 C 从 B 移动到 A 从 B 移动到 C 从 A 移动到 C """