**HashMaps:**

HashMaps are used to store the data as in the form of its keys and vales . Also Maps can be used so that suppose you have to do certain operation but for that you need to store the previous traversed data so for that you can use maps and store the data with its address so that you can access it and manipulate it however you want.

Ususally hashmaps are of two type (1) Ordered Map: -> The data is stored in increasing order ->Self balancing Binary Search Tree ->Search time complexity : O(log n) ->Inserting time : O(N) ->Deleting time : O(N)

(2) Unordered Map: -> The data is stored in no ordering ->Hashtables ->Search time complexity : O(N) ->Inserting time : O(N) ->Deleting time : O(N)

###### Code to implementing maps and printing data

```
#include <bits/stdc++.h>
using namespace std;
int main()
{
int arr[5]={10,20,30,40,50};
map<int,int>mp; // declaring map which have 2 values of int type where first is key and another is value.
for(int i=0;i<5;i++)
{
mp[i]=arr[i];
}
for(auto x:mp)
{
cout<<x.first<<" - "<<x.second<<endl;
}
return 0;
}
```