2
我发现递归,除了象阶乘这样非常简单的递归外,很难理解。如果我想打印一个字符串的所有排列,让好讲的字符串长度为5,就像"abcde"
,长度7的排列应该是递归产生排列
abced
abdce
abdec
abecd
abedc
acbde
acbed
acdbe
acdeb
acebd
acedb
adbce
adbec
adcbe
adceb
adebc
adecb
aebcd
aebdc
aecbd
aecdb
aedbc
aedcb
bacde
baced
badce
badec
baecd
baedc
bcade
bcaed
...
如果我想要一个递归来计算阶乘的所有排列5
,如4
,3
,2
或1
。我应该使用哪种算法?在这个C++库中是否有任何函数?
假设打印输出应该是这样的:
acbd
bcad
abc
bac
ab
ba
原始长度是5当然xD – JX2612
你尝试过什么吗?一些代码也许? Checkout [面试蛋糕上的这个问题](https://www.interviewcake.com/question/python/recursive-string-permutations)对于力学的下降解释 – adamb
5的因子是120 ...我认为你的意思是排列长度小于或等于5 –