Go语言实现汉诺塔算法

 更新时间:2015年03月20日 11:23:31   投稿:hebedich  
之前的文章,我们给大家分享了不少汉诺塔算法的实现语言,包括C、c++、java、python等,今天我们就来使用go语言来实现一下,需要的小伙伴来参考下吧。

hano.go

package main
import (
  "bufio"
  "fmt"
  "os"
  "strconv"
)
func main() {
  fmt.Print("输入要移动的盘子数:")
  reader := bufio.NewReader(os.Stdin)
lool:
  data, _, _ := reader.ReadLine()
  n, err := strconv.Atoi(string(data))
  if err != nil {
    fmt.Println(err)
    goto lool
  }
  hanoi(n, 'A', 'B', 'C')
}
func hanoi(n int, a, b, c byte) {
  if n > 1 {
    hanoi(n-1, a, c, b)
    fmt.Printf("%c-->%c\n", a, c)
    hanoi(n-1, b, a, c)
  } else {
    fmt.Printf("%c-->%c\n", a, c)
  }
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • 浅谈golang通道类型

    浅谈golang通道类型

    本文主要介绍了浅谈golang通道类型,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据的思路详解

    Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据的思路详解

    Stream 的实现思想就是将数据处理流程抽象成了一个数据流,每次加工后返回一个新的流供使用。这篇文章主要介绍了Go 通过 Map/Filter/ForEach 等流式 API 高效处理数据,需要的朋友可以参考下
    2022-01-01
  • GO 集合 map 使用示例小结

    GO 集合 map 使用示例小结

    Go语言的集合称为映射(map),它是一种无序的键值对(key-value)的集合,集合是通过键(key)来快速检索值(value)的,键(key)类似于索引,它指向值(value)的数据,这篇文章主要介绍了GO集合map使用总结,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • 十个Go map面试常考问题合集

    十个Go map面试常考问题合集

    go面试中,map相关知识点问的比较多,这篇文章主要为大家整理归纳了10个常考的问题,文中的示例代码讲解详细,希望对大家有一定的帮助
    2023-07-07
  • go 判断两个 slice/struct/map 是否相等的实例

    go 判断两个 slice/struct/map 是否相等的实例

    这篇文章主要介绍了go 判断两个 slice/struct/map 是否相等的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Go语言实现简单的一个静态WEB服务器

    Go语言实现简单的一个静态WEB服务器

    这篇文章主要介绍了Go语言实现简单的一个静态WEB服务器,本文给出了实现代码和运行效果,学习Golang的练手作品,需要的朋友可以参考下
    2014-10-10
  • golang 实现Location跳转方式

    golang 实现Location跳转方式

    这篇文章主要介绍了golang 实现Location跳转方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • 重学Go语言之如何使用Modules

    重学Go语言之如何使用Modules

    Go语言在Go.1.11版本发布了Go Modules,这是一种新的Go项目依赖管理解决方案,可以让Go项目的依赖包关系更加清晰,也更容易管理,下面就来看看Modules是如何使用的吧
    2023-07-07
  • golang image图片处理示例

    golang image图片处理示例

    这篇文章主要介绍了golang image图片处理的方法,结合实例形式分析了Go语言针对图片的打开、读取、转换等相关操作技巧,需要的朋友可以参考下
    2016-07-07
  • GPT回答 go语言和C语言数组操作对比

    GPT回答 go语言和C语言数组操作对比

    这篇文章主要为大家介绍了GPT回答的go语言和C语言数组操作方法对比,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10

最新评论