0088-Go-递归

环境

  • Time 2022-08-23
  • Go 1.19

前言

说明

参考:https://gobyexample.com/closures

目标

使用 Go 语言的递归。

递归函数

package main

import "fmt"

func fact(n int) int {
    if n == 0 {
        return 1
    }
    return n * fact(n-1)
}

func main() {
    fmt.Println(fact(7))
}

递归闭包

package main

import "fmt"

func main() {

    // 必须要先申明
    var fib func(n int) int

    fib = func(n int) int {
        if n < 2 {
            return n
        }

        return fib(n-1) + fib(n-2)
    }

    fmt.Println(fib(7))
}

总结

使用 Go 语言的递归。

附录

posted @ 2022-10-30 08:21  jiangbo4444  阅读(11)  评论(0)    收藏  举报