递归和排列

0 java math recursion permutation

假设我们有两盒铅笔(第一个盒子只是蓝色,第二个是红色铅笔).所以现在的问题是,我们可以通过多少种方式将x红色和蓝色铅笔放在线上?

例如:我们有3支红色铅笔和1支蓝色.然后我们有4种不同的方式.组合:BRRR,RBRR,RRBR,RRRB.

因此,使用10支红色和10支蓝色铅笔,我们有184756种不同的方式将它们排成一行.所以伙计们,如何以递归的方式写这个?

非常感谢您的帮助.

Lau*_*ves 5

这听起来像是家庭作业,所以这里有一些提示:

在处理递归时,您需要考虑基本情况.这个基本案例是0支铅笔.有多少种方法可以订购0支铅笔?

好的,现在是递归案例:你可以订购多少种非零数量的铅笔?如果你有任何红色铅笔,那么你可以先用红色铅笔,然后是剩下的铅笔.如果你有蓝色铅笔,那么你可以先用蓝色铅笔,然后是其他铅笔.