所谓递归,简而言之就是应用程序自身调用自身,以实现层次数据结构的查询和访问. 递归的使用可以使代码更简洁清晰,可读性更好(对于初学者到不见得),但由于递归需要系统堆栈,所以空间消耗要比非递归代码要大很多,而且,如果递归深度太大,可能系统资源会不够用. 递归分为直接递归和间接递归:简而言之,在函数中直接调用函数本身,称为直接递归调用.在函数中调用其它函数,其它函数又调用原函数,这就构成了函数自身的间接调用称为间接递归调用. 利用递归算法解题,首先要对问题的以下三个方面进行分析: 一.决定问题规模的…