`
touchinsert
  • 浏览: 1316117 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

递归算法4C#

阅读更多

1. 阶乘函数

1若n=0

Fact(n) = n*Fact(n-) 若n〉0

实现:

using System;
using System.Text;

namespace DataStructure
{


/// <summary>
///
/// </summary>
public class Recursion
{

/// <summary>
/// 阶乘
/// </summary>
/// <param name="n"></param>
/// <returns></returns>
public static int fact(int n)
{
if (n == 0)
return 1;
else
return n*fact(n-1);
}

}

}

测试:

using System;
using System.Text;
using DataStructure;

namespace DataStructureClient
{
class Program
{
static void Main(string[] args)
{

callFact();

Console.ReadLine();

}

static void callFact()
{
int result = Recursion.fact(4);
Console.WriteLine(result);
}

}

}

结果

24

2. 2阶Fibonacci数列

0 若n=0

Fib(n)= 1 若n=1

Fib(n-1)+Fib(n-2) 其他情况

实现:

using System;
using System.Text;

namespace DataStructure
{


/// <summary>
///
/// </summary>
public class Recursion
{

/// <summary>
/// 2阶Fibonacci数列
/// </summary>
/// <param name="n"></param>
/// <returns></returns>
public static int fibonacci(int n)
{
switch (n)
{
case 0:
return 0;
case 1:
return 1;
default:
return fibonacci(n - 1) + fibonacci(n - 2);
}
}

}


}

测试

using System;
using System.Text;
using DataStructure;

namespace DataStructureClient
{
class Program
{
static void Main(string[] args)
{

callFibonacci();

Console.ReadLine();

}

static void callFibonacci()
{
int result = Recursion.fibonacci(10);
Console.WriteLine(result);
}

}

}

结果

55

3. 汉诺塔

当n=1时,将编号为1的圆盘从塔座X直接移到塔座Z上;

当n>1时,利用塔座Y作为辅助塔座,将压在编号为n的圆盘之上的n-1个圆盘从塔座X移到塔座Y上,然后

将n从塔座X移到塔座Z上;之后再将塔座Y上的n-1个圆盘移到Z上。

实现:

using System;
using System.IO;
using System.Text;

namespace DataStructure
{


/// <summary>
///
/// </summary>
public class Recursion
{

private static List list=new ArrayList();

/// <summary>
/// hanoi tower
/// </summary>
/// <param name="n">n个圆盘</param>
/// <param name="x">出发塔座</param>
/// <param name="y">辅助塔座</param>
/// <param name="z">目的塔座</param>
public static void hanoi(int n, char x, char y, char z)
{
if (n == 1)
move(x, 1, z);
else
{
hanoi(n - 1, x, z, y); //将X上编号为1至n-1的圆盘移到Y上,Z为辅助塔座
move(x, n, z); //将编号为n的圆盘从X移到Z

hanoi(n - 1, y, x, z);//将Y上编号从1至n-1的圆盘移到Z上,X为辅助塔座

}

}

private static void move(char x, int n, char z)
{
list.add("move " + n + " from " + x + " to " + z);
Console.WriteLine("move " + n + " from " + x + " to " + z);
}

/// <summary>
/// save to file
/// </summary>
public static void save()
{
// Create an instance of StreamWriter to write text to a file.
// The using statement also closes the StreamWriter.
using (StreamWriter sw = new StreamWriter("Hanoi.txt"))
{
// Add some text to the file.
for(int i=0;i<list.length();i++)
sw.WriteLine(list.get(i));
}

}

}


}

测试

using System;
using System.Text;
using DataStructure;

namespace DataStructureClient
{
class Program
{
static void Main(string[] args)
{

callHanoi();

Console.ReadLine();
}
static void callHanoi()
{
Recursion.hanoi(10, 'x', 'y', 'z');
Recursion.save();
}
}
}

结果:

move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 7 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 6 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 8 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 6 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 7 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 9 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 6 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 7 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 6 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 8 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 7 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 6 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 10 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 6 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 7 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 8 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 6 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 7 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 6 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 9 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 7 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 6 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 8 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 6 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 5 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 7 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 5 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 4 from z to y
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 6 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 4 from y to x
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 3 from z to x
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 5 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z
move 3 from x to y
move 1 from z to x
move 2 from z to y
move 1 from x to y
move 4 from x to z
move 1 from y to z
move 2 from y to x
move 1 from z to x
move 3 from y to z
move 1 from x to y
move 2 from x to z
move 1 from y to z

分享到:
评论

相关推荐

    用递归和非递归算法实现二叉树的三种遍历.docx

    通过实验,我们可以看到递归算法和非递归算法都可以实现二叉树的三种遍历,但是递归算法更容易理解和实现,而非递归算法需要使用栈来实现。同时,我们也可以看到二叉树的三种遍历算法的时间复杂度都是O(n),其中n是...

    解决算法分析中递归问题的方法

    ### 解决算法分析中递归问题的方法 在算法设计与分析领域中,递归是一种非常重要的技术手段。很多高效的算法,比如二分查找、快速排序等,都是通过递归实现的。然而,当一个算法中包含对自己的递归调用时,分析这个...

    算法:C语言实现

    包括基本算法分析原理,基本数据结构、抽象数据结构、递归和树等数据结构知识,选择排序、插入排序、冒泡排序、希尔排序、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序...

    扫雷课程设计

    - **递归算法的应用**:递归算法是一种通过自我调用来解决问题的方法。在扫雷游戏中,递归算法可以用于实现点击空白格时自动展开周围的空白格,从而提高游戏的流畅性和用户体验。 - **鼠标的应用**:在图形用户界面...

    精选微软数据结构+算法面试100题[

    根据给定的信息,本文将详细解析“精选微软数据结构+算法面试100题”的核心知识点,特别是关于“把二元查找树转变成排序的双向链表”这一具体题目。 ### 一、二元查找树简介 二元查找树(Binary Search Tree, BST)...

    西安电子科技大学数据结构期末复习题.doc

    常见的算法有递归算法和迭代算法。 4. 链表: 链表是一种链式存储结构的数据结构。链表中的每个结点包括数据域和指针域,通过指针域将结点连接起来。链表的特点是插入和删除操作方便,不需要移动结点。 5. 栈和...

    最短哈密顿回路

    在给定的压缩包文件"80ec39d648ee4c3f92838b2ac0eaad8b"中,可能包含了实现最短哈密顿回路算法的代码或者其他相关资源。通过分析和理解这些内容,可以学习到具体的编程实现细节,例如如何构建和遍历图数据结构、如何...

    汇编语言实验报告

    - 使用递归算法。 - 设置递归基线条件,即当输入为0或1时返回该值本身。 - 调用自身函数来递归计算前两项的和。 **示例代码**: **成绩统计** ```assembly data segment scores db 76, 69, 84, 90, 73, 88, 99, ...

    暑假模拟题(普及)

    - **递归与迭代**: 使用递归或迭代方法解决数学序列问题。 - **指数增长**: 当基数以固定比例增长时,其增长速度呈指数型增加。 **问题描述详解:** 题目描述了一个公司成长的过程及其最终破产的原因。公司规定每三...

    分治法求解大整数乘法的分解

    由此可得:用解递归方程的迭代公式法,不妨设n=2^k: T(n)=3T(n/2)+cn =3(3T(n/4)+cn/2)+cn =9(T(n/8)+ cn/4)+3cn/2+cn =…… =3^k +3^(k-1) *2c+3^(k-2) *4c+……+3c2^(k-1)+c2^k = O(n^log3) 则得到T(n)=O(n^...

    信息学奥赛培训教程C++版.doc

    11. **递归与动态规划**:这两类方法在解决复杂问题时经常用到,尤其在信息学竞赛中。 12. **调试技巧**:学会使用调试工具,如gdb,找出程序错误并修复。 13. **优化技巧**:包括代码优化、时间复杂度分析,以及...

    jnn for test

    1. **Java Neural Network实现**:项目可能包含多种神经网络结构,如前馈网络、卷积神经网络或递归神经网络,以及对应的训练和优化算法,如反向传播、随机梯度下降等。 2. **数据预处理**:神经网络通常需要经过...

    东南大学2008C 上试卷.doc

    10. 程序基本结构:程序的常见结构包括顺序结构、分支结构、循环结构,递归结构也是编程中的一种结构,但不是程序的基本结构。 【C++程序设计知识点】 1. 编译过程:C语言源程序经过编译器转换成目标程序,然后...

Global site tag (gtag.js) - Google Analytics