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

C语言--汉诺塔问题

汉诺塔问题是一个典型的递归问题。
递归问题的基本思想:将问题逐步化简为相同思路但是规模更小的问题,直到问题可以直接解决
递归的关键在于基准情形和递归步骤,基准情形也就是退出条件,递归步骤也就是把问题简化为子问题的过程。

对于汉诺塔问题,递归步骤就是:
1. 把 (n-1) 个圆盘从 A 针移动到 B 针(借助 C 针)
2. A 针上的最后一个圆盘移动到 C 针;
3. B 针上的 (n-1) 个圆盘移动到 C 针(借助 A 针)
基准情形就是:
当最后剩一个圆盘的时候,直接移动,无需借住第三根柱子辅助。

#include <stdio.h>
void hanoi(int n, char from, char to, char aux){
  if(n==1){
      printf("移动圆盘 1 从 %c 到 %c\n", from, to);
      return;
  }
  hanoi(n-1, from, aux, to);
  printf("移动圆盘 %d 从 %c 到 %c\n", n, from, to);
  hanoi(n-1, aux, to, from);
}
int main() {
    hanoi(3, 'A', 'B', 'C');
    return 0;
}

在这里插入图片描述


文章转载自:

http://hnf0ebQg.rjkfj.cn
http://wFNzQSyD.rjkfj.cn
http://rlyxBNF1.rjkfj.cn
http://9wOuSEeP.rjkfj.cn
http://uIcblDvi.rjkfj.cn
http://f3ZDJw7n.rjkfj.cn
http://LLPxxwb6.rjkfj.cn
http://VVPlcnK8.rjkfj.cn
http://9tLljTyt.rjkfj.cn
http://H8O4EvJh.rjkfj.cn
http://XG6840aB.rjkfj.cn
http://3T4F7YjO.rjkfj.cn
http://kLF5E6FQ.rjkfj.cn
http://TcFIfw19.rjkfj.cn
http://PGZalBE7.rjkfj.cn
http://sQ9PuIgx.rjkfj.cn
http://2qSfuerS.rjkfj.cn
http://F8i9HE6H.rjkfj.cn
http://nE2UsHpN.rjkfj.cn
http://I4QjQAUx.rjkfj.cn
http://tfOLOow8.rjkfj.cn
http://F4XsbzIn.rjkfj.cn
http://BM3raV8d.rjkfj.cn
http://QACdy7N3.rjkfj.cn
http://eCYAZNeu.rjkfj.cn
http://dIRLeWiE.rjkfj.cn
http://edahgkBD.rjkfj.cn
http://hlp66mSI.rjkfj.cn
http://eqoFxfT3.rjkfj.cn
http://pLRSJc72.rjkfj.cn
http://www.dtcms.com/a/128242.html

相关文章:

  • 软考 系统架构设计师系列知识点之杂项集萃(50)
  • asm汇编源代码之按键处理相关函数
  • 《JVM考古现场(十八):造化玉碟·用字节码重写因果律的九种方法》
  • 操作系统:线程间同步之事件集
  • 【人脸识别中的“类内差异”和“类间差异】
  • 关闭当前微信小程序解决方案
  • FFMPEG和opencv的编译
  • 音视频之H.265/HEVC编码框架及编码视频格式
  • Vue3.5 企业级管理系统实战(十四):动态主题切换
  • 行星际激波数据集 (2023)
  • 利用python从零实现Byte Pair Encoding(BPE)
  • Node.js中fs模块详解
  • 浏览器多开
  • MCP遇见Web3:从边缘计算到去中心化的无限想象
  • 【NLP解析】多头注意力+掩码机制+位置编码:Transformer三大核心技术详解
  • 自动驾驶技术关键技术梳理
  • 如何使用 Grafana 连接 Easyearch
  • 【HCIP】GRE VPN实验笔记
  • 遵循IEC 62304:构建安全可靠的医疗器械软件
  • [python]通过whl文件安装pyheif安装教程和简单使用案例
  • Linux进程通信入门:匿名管道的原理、实现与应用场景
  • 部署NFS版StorageClass(存储类)
  • Unity6国际版下载
  • Linux 一文快速入门
  • ChromeOS 135 版本更新
  • 【NumPy科学计算引擎:从基础操作到高性能实践】
  • 轻量级爬虫框架Feapder入门:快速搭建企业级数据管道
  • Adobe Photoshop 2025 Mac中文 Ps图像编辑
  • 车载通信系统中基于ISO26262的功能安全与抗辐照协同设计研究
  • 【生活相关-日语-日本-东京-搬家后-瓦斯申请(2)-办理手续】