medmond919 icon

Go Example #4

medmond919 | PRO | 03/26/18 06:13:29 PM UTC | 0 ⭐ | 368 👁️ | Never ⏰ | []
Go |

380 B

|

None

|

0 👍

/

0 👎

package main
 
import (
    "fmt"
    "github.com/BenLubar/memoize"
)
 
func main() {
    var factorial func(n int) int
    factorial = func(n int) int {
        fmt.Printf("call factorial: %d\n", n)
        if n == 1 {
            return 1
        } else {
            return n * factorial(n-1)
        }
    }
    factorial = memoize.Memoize(factorial).(func(int) int)
    fmt.Println(factorial(4))
    fmt.Println(factorial(6))
}

Comments