go map是hash map而非rb-tree map

      在看go圣经时, 有这样一句话: A map holds a set of key/value pairs and provides constant-time operations to store, retrieve or test for an item in the set.  看完这句话, 应该能立即感觉到go map是hash map, 而非rb-tree map.

        来看一个简单的程序:

package main

import (
    "fmt"
)

func main() {
    m := make(map[int] string)
    m[2] = "123"
    m[1] = "456"
    m[3] = "789"
    
    for key, value := range m { 
        fmt.Println(key, value) 
    }
}

       结果是:

2 123
1 456
3 789
       这很好, 没有排序, 因为它是hash map而非rb-tree map.

       关于hash map, 我们之前已经进行了非常详细的介绍, 故不再赘述。

猜你喜欢

转载自blog.csdn.net/stpeace/article/details/81714581
今日推荐