久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

(C++)STL中map按照vaule來(lái)排序

 大道至簡(jiǎn)o 2014-09-23

  STL中map結(jié)構(gòu)實(shí)際運(yùn)用時(shí),,有時(shí)需要我們通過(guò)<key,value>中的value來(lái)進(jìn)行排序而不是使用默認(rèn)的key,,由于value值是有可能重復(fù)的,,所以交換key和value不一定達(dá)到要求。這里我們可以通過(guò)使用vector來(lái)實(shí)現(xiàn)這一轉(zhuǎn)換:

  1 把map結(jié)構(gòu)中的數(shù)據(jù)放到vector中

  2 設(shè)置vector的排序算法來(lái)實(shí)現(xiàn)通過(guò)value排序

 

代碼如下:

 18 #include<iostream>
 19 #include<string>
 20 #include<string.h>
 21 #include<map>
 22 #include<vector>
 23 #include<algorithm>
 24
 25 using namespace std;
 26
 27 int cmp(const pair<string,double> &x,const pair<string,double> &y)
 28 {
 29     return x.second > y.second;
 30 }
 31
 32 void sortMapbyValue(map<string,double> &t_map,vector< pair<string,double> > &t_vec)
 33 {
 34     for(map<string,double>::iterator iter = t_map.begin();iter != t_map.end(); iter ++)
 35     {
 36         t_vec.push_back(make_pair(iter->first,iter->second));
 37     }
 38
 39     sort(t_vec.begin(),t_vec.end(),cmp);
 40 }
 41
 42 int main(void)
 43 {
 44     map<string,double> m_result;
 45     vector< pair<string,double> > v_result;
 46
 47     m_result.insert(pair<string,double>("abc",20.33));
 48     m_result.insert(pair<string,double>("abd",22.33));
 49     m_result.insert(pair<string,double>("abe",21.33));
 50     m_result.insert(pair<string,double>("abf",19.33));
 51
 52     cout<<"sort by key :"<<endl<<endl;
 53     for(map<string,double>::iterator iter = m_result.begin(); iter != m_result.end(); iter++)
 54     {
 55         cout<<iter->first<<"\t\t"<<iter->second<<endl;
 56     }
 57
 58     sortMapbyValue(m_result,v_result);
 59
 60     cout<<"sort by value :"<<endl<<endl;
 61     for(int i=0; i<v_result.size(); i++)
 62     {
 63         cout<<v_result[i].first<<"\t\t"<<v_result[i].second<<endl;
 64     }
 65
 66 }

運(yùn)行結(jié)果:

 

(C++)STL中map按照vaule來(lái)排序

 

參考: http://blog.csdn.net/wanpengcoder/article/details/5991792

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多