在这种情况下递归算法如何工作?什么类型的递归? [英] How recursive algorithm work in this case? And what type of recursion is ?
本文介绍了在这种情况下递归算法如何工作?什么类型的递归?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
public void Recursion(int position)
{
itemLevel++;
permutation.SetValue(itemLevel, position);
if(itemLevel == numOfItems)
{
AddPermutation(permutation);
}
else
{
for(int currentPosition = 0; currentPosition < numOfItems;
currentPosition++)
{
if(permutation[currentPosition] == 0)
{
Recursion(currentPosition);
}
}
}
itemLevel--;
permutation.SetValue(0, position);
}
推荐答案
请看问题的评论。
请参阅:
http://en.wikipedia.org/wiki/Recursion [ ^ ],
http://en.wikipedia.org/wiki/Recursion_%28computer_science%29 [ ^ ],
http://en.wikipedia.org/wiki/Stack_%28abstract_data_type%29 [ ^ ](这不递归中使用的是什么,但是很好也知道,
htt p://en.wikipedia.org/wiki/Call_stack [ ^ ](但就是这样)。
我认为这个解释足够深入: http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Mips/stack.html [<一个href =http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Mips/stack.html\"target =_ blanktitle =New Window> ^ ]。br祝你好运,
-SA
Please see the comments to the question.
Please see:
http://en.wikipedia.org/wiki/Recursion[^],
http://en.wikipedia.org/wiki/Recursion_%28computer_science%29[^],
http://en.wikipedia.org/wiki/Stack_%28abstract_data_type%29[^] (this is not what is used in recursion, but good to know, too),
http://en.wikipedia.org/wiki/Call_stack[^] (but that is it).
I think this explanation is deep enough: http://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Mips/stack.html[^].
Good luck,
—SA
这篇关于在这种情况下递归算法如何工作?什么类型的递归?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文