怀仁有做网站的公司吗,wordpress循环所有文脏,wordpress怎么迁移,利用论坛推广网站一 基本概念
1. map/multimap
map/multimap属于关联式容器#xff0c;底层结构是用二叉树实现。
其中所有元素都是pair, pair中第一个元素为key#xff08;键值#xff09;#xff0c;起到索引作用#xff0c;第二个元素为value#xff08;实值#xff09;#xff0…一 基本概念
1. map/multimap
map/multimap属于关联式容器底层结构是用二叉树实现。
其中所有元素都是pair, pair中第一个元素为key键值起到索引作用第二个元素为value实值代表索隐所对应的数值变量注意所有元素都会根据元素的键值自动排序
map和multimap的区别为 map不允许容器中有重复key值元素而multimap允许容器中有重复key值元素
2. unordered_map
内部是一个hash_table,vector元素节点可挂接链表来解决hash冲突. map与unordered_map在查找时存在差别map由于底层是红黑树因此时间复杂度是O(logn),
unordered_map是哈希表查找的时间复杂度为O(1)。
因此在数据结构刷题时更推荐使用unordered_map 二 优点
使用该数据结果可以根据key值快速找到value值
find(key); //查找key是否存在,若存在返回该键的元素的迭代器若不存在返回set.end();count(key); //统计key的元素个数
两者区别为find 返回的是迭代器count还可以用于统计对于map结果为0或者1。
#includeiostream
#includemap
#includestring
using namespace std;int main()
{mapint,stringmaps;if(maps.find(1)maps.end()){cout没有1这个元素endl;}if(maps.count(1)0){cout没有1这个元素endl;}//添加元素1maps[1]one;if(maps.find(1)!maps.end()){cout有1这个元素endl;}if(maps.count(1)){cout有1这个元素endl;}return 0;
}运行结果
没有1这个元素
没有1这个元素
有1这个元素
有1这个元素
注意map只能查找当前是否存在对应的key值而不能判断是否有value值存在。因此需要根据需要合适的配置pairkey,value对。