最近开始学习go,打算先学习基本语法,这期间刷一些简单的算法巩固一下,再选一两个go框架看看微服务和对高并发的支持。
算法练习
其实这里都是之前比较熟悉的基础算法,只是用go实现一下以巩固语法。
斐波那契数列:动态规划
package main
func main() {
f := fei(6)
println(f)
}
func fei(n int) int{
var a int = 0
var b int = 1
var sum int
if n<=1{
return n
}
for i :=2;i<=n;i++{
sum = a+b
a = b
b = sum
}
return sum
}
阶乘:动态规划
package main
func main() {
f := fei(15)
println(f)
}
func fei(n uint64) uint64{
var a uint64 = 1
var i,sum uint64
if n<=1{
return n
}
for i =2;i<=n;i++{
sum = i * a
a = sum
}
return sum
}