STL的Map和Hashmap比较(面试)
【1】区别:
1、构造函数 hash_map需要hash函数,等于函数;map只需要比较函数(小于函数)。
2、存储结构 hash_map采用hash表存储,map一般采用红黑树实现。因此内存数据结构是不一样的。
3、STL的map底层是用红黑树实现的,查找时间复杂度是log(n);
4、STL的hash_map底层是用hash表存储的,查询时间复杂度是O(1);
1、构造函数 hash_mSTL的Map和Hashmap比较(面试)
【1】区别:
1、构造函数 hash_map需要hash函数,等于函数;map只需要比较函数(小于函数)。
2、存储结构 hash_map采用hash表存储,map一般采用红黑树实现。因此内存数据结构是不一样的。
3、STL的map底层是用红黑树实现的,查找时间复杂度是log(n);
4、STL的hash_map底层是用hash表存储的,查询时间复杂度是O(1);
1、构造函数 hash_m