如何写递归代码

1)找到如何将大问题分解为小问题的规律,写出递推公式
2)找到终止条件
3)把递推公式与终止条件转化为代码

如何简单理解递归

不要去想递归的全部执行过程(人脑理解起来台复杂)
如果一个问题 A 可以分解为若干子问题 B、C、D,你可以假设子问题 B、C、D 已经解决,在此基础上思考如何解决问题 A。而且,你只需要思考问题 A 与子问题 B、C、D 两层之间的关系即可,不需要一层一层往下思考子问题与子子问题,子子问题与子子子问题之间的关系。屏蔽掉递归细节,这样子理解起来就简单多了。