package
{
import flash.display.Sprite;
public class recursion extends Sprite
{
public function recursion()
{
//trace(sum(5));简单的递归
doTowers(2,"A","B","C");//汉诺(hanoi)
}
private function doTowers(n:int, f:String, m:String, t:String):void
{
if(n==1){
//如果一个的话直接是放到目的地即可
trace("第"+n+"个from "+f+" to "+t);
}else{
//每次的上一步都是先从第一个移到中间
doTowers(n-1,f,t,m);
//每次的第二步都是先从第一个移到最后
trace("第"+n+"个from "+f+" to "+t);
//每次的第三步都是先从第二个移到最后
doTowers(n-1,m,f,t);
}
}
private function sum(n:int):Number{
if(n==1){
return 1;
}else{
return n*sum(n-1);
}
}
}
{
import flash.display.Sprite;
public class recursion extends Sprite
{
public function recursion()
{
//trace(sum(5));简单的递归
doTowers(2,"A","B","C");//汉诺(hanoi)
}
private function doTowers(n:int, f:String, m:String, t:String):void
{
if(n==1){
//如果一个的话直接是放到目的地即可
trace("第"+n+"个from "+f+" to "+t);
}else{
//每次的上一步都是先从第一个移到中间
doTowers(n-1,f,t,m);
//每次的第二步都是先从第一个移到最后
trace("第"+n+"个from "+f+" to "+t);
//每次的第三步都是先从第二个移到最后
doTowers(n-1,m,f,t);
}
}
private function sum(n:int):Number{
if(n==1){
return 1;
}else{
return n*sum(n-1);
}
}
}
}
那个链表后面发,先发递归··其实是链表还不知道怎么写····