概述
X星球特别讲究秩序,所有道路都是单行线。
一个甲壳虫车队,共16辆车,按照编号先后发车,夹在其它车流中,缓缓前行。
路边有个死胡同,只能容一辆车通过,是临时的检查站,如图所示。
X星球太死板,要求每辆路过的车必须进入检查站,也可能不检查就放行,也可能仔细检查。
如果车辆进入检查站和离开的次序可以任意交错。那么,该车队再次上路后,可能的次序有多少种?
为了方便起见,假设检查站可容纳任意数量的汽车。
显然,如果车队只有1辆车,可能次序1种;2辆车可能次序2种;3辆车可能次序5
#include<stdio.h>
//a为左边通道内的汽车数
//b为进胡同里的汽车数
int text(int a,int b)
{
if (a == 0) return 1;
if (b == 0) return text(a - 1, 1);
return text(a, b - 1) + text(a-1,b+1); //要么左边不动,胡同出一辆车,要么左边的车进入胡同
}
int main()
{
int a = text(3,0);
printf("%dn",a);
return 0;
}
递归要点:参数设计-方程设计-边界条件设计。
最后
以上就是超级高山为你收集整理的递归之出栈次序的全部内容,希望文章能够帮你解决递归之出栈次序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复