Map is a container in C++ Standard Template Library (STL) that stores elements in a key-value pair. It is an associative container that stores elements in a sorted order based on the key. The map container is defined in the header file <map>. In this tutorial, we will discuss the use of map in C++ with the help of Tutorialspoint.
Table of Contents
Table of Contents
Introduction
Map is a container in C++ Standard Template Library (STL) that stores elements in a key-value pair. It is an associative container that stores elements in a sorted order based on the key. The map container is defined in the header file
What is Map in C++?
Map is an associative container in C++ STL that stores elements in key-value pairs. It is similar to a dictionary in Python or a hashmap in Java. The key is used to access the value associated with it. The map container stores elements in a sorted order based on the key. The keys are unique, and the values can be duplicates.
How to Declare a Map?
The syntax to declare a map in C++ is as follows:
std::map map_name;
The key_type is the data type of the key, and the value_type is the data type of the value. For example, to declare a map of integers as keys and strings as values, we can use:
std::map my_map;
How to Insert Elements in Map?
The syntax to insert elements in a map is as follows:
my_map.insert(std::make_pair(key, value));
For example, to insert an element with key 1 and value "apple" in my_map, we can use:
my_map.insert(std::make_pair(1, "apple"));
How to Access Elements in Map?
The syntax to access elements in a map is as follows:
my_map[key];
For example, to access the value associated with key 1 in my_map, we can use:
std::cout << my_map[1] << std::endl;
How to Remove Elements in Map?
The syntax to remove elements in a map is as follows:
my_map.erase(key);
For example, to remove an element with key 1 in my_map, we can use:
my_map.erase(1);
Advantages of Using Map
The advantages of using map in C++ are:
- It stores elements in a sorted order based on the key.
- It allows fast access to elements using the key.
- It is easy to insert, remove, and modify elements in a map.
Applications of Map
The applications of map in C++ are:
- Storing phonebook contacts with names as keys and phone numbers as values.
- Storing word frequency counts with words as keys and counts as values.
- Implementing a cache with keys as URLs and values as HTML pages.
Conclusion
In this tutorial, we have discussed the use of map in C++ with the help of Tutorialspoint. Map is an associative container that stores elements in a key-value pair and is useful for storing data in a sorted order based on the key. It is easy to insert, remove, and modify elements in a map, and it has various applications in real-world scenarios.
Question and Answer
Q: What is the difference between map and unordered_map in C++?
A: Map stores elements in a sorted order based on the key, while unordered_map stores elements in an unordered manner based on the hash of the key. Map has a slower insertion and deletion time but faster search time, while unordered_map has a faster insertion and deletion time but slower search time.
Q: Can a map have duplicate keys in C++?
A: No, a map cannot have duplicate keys in C++.
Q: What is the time complexity of inserting, accessing, and deleting elements in map in C++?
A: The time complexity of inserting, accessing, and deleting elements in map in C++ is O(log n) in the worst case, where n is the size of the map.