递归案例:
首先判断n是否等于1,否则就执行下面的代码n*show(n-1),show(n-1)=》show(9),这时候并不知道show(9)的具体数值是多少
所以show(9)调用自己,把9当成实参传给自己再执行一遍刚刚的步骤,直到if(1 ==n) return 1 这段代码成立;
我把这段程序执行流程画了出来!
注意事项:
使用递归必须有递归的规律以及退出条件。
使用递归必须使问题简单化而不是复杂化。
若递归影响到程序的执行性能,则使用递推取代之。
递归案例:
首先判断n是否等于1,否则就执行下面的代码n*show(n-1),show(n-1)=》show(9),这时候并不知道show(9)的具体数值是多少
所以show(9)调用自己,把9当成实参传给自己再执行一遍刚刚的步骤,直到if(1 ==n) return 1 这段代码成立;
我把这段程序执行流程画了出来!
注意事项:
使用递归必须有递归的规律以及退出条件。
使用递归必须使问题简单化而不是复杂化。
若递归影响到程序的执行性能,则使用递推取代之。