1 /* 2 std::map 是一个关联容器,它存储的是键值对(key - value),每个键(key)都是唯一的, 3 并且会根据键自动进行排序(默认是按键的升序排列)。通过键可以快速查找与之关联的值, 4 查找的时间复杂度为 O(logn)。std::map 通常使用红黑树这种平衡二叉搜索树来实现。 5 */ 6 7 #include <iostream> 8 #include <map> 9 #include <string> 10 #include<cstdio> 11 using namespace std; 12 13 int main() { 14 // 创建一个存储字符串到整数映射的 map 15 map<string, int> myMap; 16 17 // 插入键值对 18 myMap["apple"] = 1; 19 myMap["banana"] = 2; 20 myMap["cherry"] = 3; 21 22 // 访问 map 中的元素 23 cout << "apple 对应的值: " << myMap["apple"] << endl; 24 25 // 检查键是否存在 26 if (myMap.find("banana")!= myMap.end()) { 27 cout << "banana 存在于 map 中" << endl; 28 } 29 30 // 遍历 map,auto 是 C++ 的类型推导关键字,编译器会根据 myMap 中元素的实际类型自动推导出 pair 的类型 31 // & 表示引用。使用引用可以避免在遍历过程中对元素进行复制,从而提高效率,尤其是当元素类型比较大时。 32 for (const auto& pair : myMap) { 33 std::cout << pair.first << ": " << pair.second << std::endl; 34 } 35 36 // 删除键值对 37 myMap.erase("cherry"); 38 39 // 输出 map 的大小 40 std::cout << "map 的大小: " << myMap.size() << std::endl; 41 42 return 0; 43 }
 
                    
                     
                    
                 
                    
                 
 
         
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号