Map

Map Functions

 

map<string , int> phoneNum; 

phoneNum.insert( pair<string , int>("zunglee", 530-7972));

 

 

map<string , int> phoneNum;

phoneNum.insert( pair<string , int>("zunglee", 530-7972));

for(pair<string , int> p : phoneNum){
     cout<<"Contact Name :" <<p.first;
     cout<<"Contact number :" <<p.second;
}

 

 

//1.) COPY to vector and sort;
map<string , int> phoneNum;
..
..
..
vector<pair<string , int>> vecData;

for(auto &it : phoneNum){
      vecData.push_back(it);
}

sort(vecData.begin() ,  vecData.end() , []( pair<string,int> a , pair<string,int> b ){
   return a.second  < b.second;
});

 

 

map<string , int> phoneNum;
..
..
..
struct comp {
    template <typename T>
  
    // Comparator function
    bool operator()(const T& l,
                    const T& r) const
    {
        if (l.second != r.second) {
            return l.second < r.second;
        }
        return l.first < r.first;
    }
};

set<pair<string , int> , comp> setData(phoneNum.begin() , phoneNum.end());

 

 

map<string , int> phoneNum;
..
..
..
sortMap(phoneNum);

void sortMap(map<string , int> &M){

multimap<int, string> MM;

for (auto& it : M) {
        MM.insert({ it.second, it.first });
    }

}

 

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
error

Enjoy this blog? Please spread the word :)

0
Would love your thoughts, please comment.x
()
x