【Leetcode刷题笔记】c++ map的排序方式

按Key排序
map默认的排序方式就是按key进行排序

按Value排序
当需要按Value排序时,装入vector>中,再进行vector的排序,需要自写排序函数,然后进行排序。

int cmpByValue(const pair& p1,const pair& p2){
	//从大到小
	return p1.second>p2.second;
	//从小到大
	return p1.second& m,vector>& v){
	for(map::iterater it=m.begin();it!=m.end();it++){
	v.push_back(make_pair(it->first,it->second));
}
sort(v.begin(),v.end(),cmpByValue);
}

根据上述操作之后,可以得到一个根据map中value排序的vector数组,再进行操作即可。

你可能感兴趣的:(c++学习)