按照每个向量的大小对c ++中的向量矢量进行排序

时间:2015-06-02 16:41:49

标签: c++ sorting vector

我有一个矢量矢量,我想按每个矢量的大小排序! 我怎么能这样做! 我想使用sort函数,但是我无法在sort函数中找到任何参数来确定我想用每个内容的大小对其进行排序

1 个答案:

答案 0 :(得分:5)

您只需要指定一个谓词:

vector<vector<int>> vecs;
vecs.push_back(vector<int>(4));
vecs.push_back(vector<int>(2));
vecs.push_back(vector<int>(1));
vecs.push_back(vector<int>(3));

std::sort(vecs.begin(), vecs.end(), [](const vector<int> & a, const vector<int> & b){ return a.size() < b.size(); });

此代码按最小值到最大值对矢量进行排序。