- 最强解析面试题:Goland 并发版斐波那契数列
- 题目
- 思路
- 代码
- 附录
最强解析面试题:Goland 并发版斐波那契数列
文章讲解 “ Goland 并发版斐波那契数列 ” 经典面试题,包含思路及源码,及解惑!
题目思路Goland 并发版斐波那契数列
代码将斐波那契的范式拆分成 不同的 goroutine 执行。
package main
import "fmt"
func main () {
ch:=make(chan int)
go Feibo(5,ch)
fmt.Println("hello https://tool.lu/:",<-ch)
}
func Feibo(n int,ch chan<-int){
if n <= 0{
ch <- 0
}else if n < 3 {
ch <- 1
}else{
ch1:=make(chan int)
go Feibo(n-1,ch1)
fmt.Println("goroutine ch1")
ch2:=make(chan int)
go Feibo(n-2,ch2)
fmt.Println("goroutine ch2")
ch <- <-ch1 + <-ch2
}
}
附录
自负和自大真的是搞笑!



