golang 一维数组和map哪个效率高

miss201 · · 901 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

```go package main import ( "fmt" "time" ) func main() { const nums = 1000000 arr := [nums]int{} ma := make(map[int]int, nums) start := time.Now() for i := 0; i < nums; i++ { arr[i] = i } fmt.Printf("add arr %.2f s", time.Since(start).Seconds()) fmt.Println("-------------------------") start1 := time.Now() for i := 0; i < nums; i++ { ma[i] = i } fmt.Printf("add map %.2f s", time.Since(start1).Seconds()) fmt.Println("-------------------------") start2 := time.Now() for _, _ = range arr { //fmt.Print(k, v) } fmt.Println("-------------------------") fmt.Printf("for each array %.2f s\n", time.Since(start2).Seconds()) fmt.Println("-------------------------") start3 := time.Now() for _,_= range ma { } fmt.Println("-------------------------") fmt.Printf("for ecah map %.2f s\n", time.Since(start3).Seconds()) fmt.Println("-------------------------") } ```` 打印的结果是 nums越大的时候,map的时间就比array多了, ![image.png](https://static.studygolang.com/180802/f6e35f538b2b2e3cf498b2662dac0899.png) 但是查看资料说是: ![image.png](https://static.studygolang.com/180802/188d4ad2eefe355bc3bb0598fadbeb74.png) ##那到底哪个效率高些呢

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

901 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传