计算1~10亿的总和

2019-10-21  本文已影响0人  韩小禹

开始学习数据结构和算法,书中通过一个案例体现了使用和不适用算法来计算1~10亿的总和,并记录了程序的执行时间,相比之下差别还是非常明显。

package main

import (
    "fmt"
    "time"
)

func test1() {
    start := time.Now()
    sum := 0
    num := 1000000000
    for n:=0;n<=num;n++{
        sum+=n
    }
    cost := time.Since(start)
    fmt.Println(sum)
    fmt.Printf("cost=[%s]", cost)
}

func test2(){
    start := time.Now()
    num := 1000000000
    sum := (num + 1) * num / 2
    cost := time.Since(start)
    fmt.Println(sum)
    fmt.Printf("cost=[%s]", cost)
}

func main(){
    //test1()
      test2()
}
500000000500000000
cost=[358.985ms]
500000000500000000
cost=[0s]
上一篇 下一篇

猜你喜欢

热点阅读