码迷,mamicode.com
首页 > 其他好文 > 详细

Go基础之函数递归实现汉诺塔

时间:2019-06-30 19:14:36      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:string   汉诺塔   package   go基础   layer   函数   turn   实现   fun   

Go递归实现汉诺塔

package main

import "fmt"

// a 是源,b 借助, c 目的长度
func tower(a, b, c string, layer int) {
    if layer == 1 {
    fmt.Println(a, "111->", c)
        return
}

// n-1 个 a 借助 c 到 b
tower(a, c, b, layer-1)
fmt.Println(a, "11->", c)
// b n-1 借助a移动到c
tower(b, a, c, layer-1)

}
func main() {
    tower("a", "b", "c", 3)
}

Go基础之函数递归实现汉诺塔

标签:string   汉诺塔   package   go基础   layer   函数   turn   实现   fun   

原文地址:https://www.cnblogs.com/JevonWei/p/11110506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!