当前位置: 首页 > news >正文

全国网站制作公司郑州seo

全国网站制作公司,郑州seo,做网站建网站,自己做网站买C# 使用递归方法实现汉诺塔步数计算 Part 1 什么是递归Part 2 汉诺塔Part 3 程序 Part 1 什么是递归 举一个例子:计算从 1 到 x 的总和 public int SumFrom1ToX(int x) {if(x 1){return 1;}else{int result x SumFrom1ToX_2(x - 1); // 调用自己return result…

C# 使用递归方法实现汉诺塔步数计算

  • Part 1 什么是递归
  • Part 2 汉诺塔
  • Part 3 程序

Part 1 什么是递归

举一个例子:计算从 1 到 x 的总和

public int SumFrom1ToX(int x)
{if(x == 1){return 1;}else{int result = x + SumFrom1ToX_2(x - 1);  // 调用自己return result;}
}

Part 2 汉诺塔

有三个石柱,在最左侧的石柱上从小到大摆放 N 层盘片,需要从最左侧的石柱移动到最右侧的石柱上,中间的石柱作为缓冲,一次只能移动一个盘片,且无论何时较小的盘片始终在较大的盘片上面。
这个问题求解这过程中搬运的次数

Part 3 程序

创建一个Move函数来移动盘子

static void Move(int pile, char src, char temp, char dst)
{}

pile 是最左侧的盘片数量,src 是起始点,temp 是中间的缓冲区,dst 是终点

Move(pile - 1, src, dst, temp); // 将pile-1层盘片从src经过dst移动到temp
Move(1, src, temp, dst); // 将最底层的盘片从src移动到dst
Move(pile - 1, tmp, src, dst); // 将pile-1层汉诺塔从temp经过src移动到dst

Move 方法的代码

static void Move(int pile, char src, char temp, char dst)
{if (pile == 1){Console.WriteLine($"{src} --> {dst}");steps++;return;}Move(pile - 1, src, dst, temp);Move(1, src, temp, dst);Move(pile - 1, temp, src, dst);
}

完整代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;namespace ConsoleHelloWorld
{class Hanoi{public static int steps = 0;public void ShowHanoiPath(int levels){Console.WriteLine("输入的汉诺塔层数是:{0}", levels);Move(levels, 'A', 'B', 'C');Console.WriteLine("一共移动了{0}次", steps);}static void Move(int pile, char src, char temp, char dst){if (pile == 1){Console.WriteLine($"{src} --> {dst}");steps++;return;}Move(pile - 1, src, dst, temp);Move(1, src, temp, dst);Move(pile - 1, temp, src, dst);}}class Program{static void Main(string[] args){Hanoi hanoi = new Hanoi();hanoi.ShowHanoiPath(4);}}
}

在这里插入图片描述

http://www.yidumall.com/news/98981.html

相关文章:

  • wordpress前台构架图seo网站平台
  • 怎么查看域名网站的容量到期优化网站关键词优化
  • 做品牌推广用什么网站灰色词首页排名接单
  • 手机可以做3d动漫视频网站有哪些电工培训
  • 长沙公众号开发杭州seo推广优化公司
  • 南宁正规公众号网站建设推广线下推广的渠道和方法
  • wordpress 门户网站源码百度高级搜索技巧
  • 电子商务网站建设与管理实验人民日报最新消息
  • 网页版传奇链接微信seo是什么意思
  • 织梦做的网站网速打开慢是怎么回事唯尚广告联盟平台
  • 淘宝客是如何做网站与淘宝对接的搜索引擎营销简称seo
  • 网站申请微信支付网络营销的主要方式
  • 内部券网站怎么做做排名优化
  • 小红书推广策略百度关键词优化平台
  • 网站建设开放的端口网站建设方案及报价
  • 推广网站怎么建网络营销管理名词解释
  • 婚庆行业网站建设sem电子扫描显微镜
  • 网站地图 百度域名注册流程和费用
  • 移动互联网开发的学习心得百度搜索排名优化
  • 沈阳化工大学建设工程全专业优化公司
  • 网站 目标seo怎么做教程
  • 吉安做网站优化珠海seo排名收费
  • 秦皇岛市建设路小学网站站长之家素材网
  • ps设计网站百度指数查询入口
  • 如何做网站逻辑结构图百度招商加盟推广
  • 政府网站建设 领导重视上海网站排名优化怎么做
  • 杭州模板网站制作方案seo是什么及作用
  • 从0到建网站深圳优化公司
  • 网站策划与建设阶段的推广百度网址是多少 百度知道
  • 百度公司网站怎么建设目前最好的营销模式