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

MDK*_*MDK 1 c++ sorting vector

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

dwc*_*las 6

您只需要指定一个谓词:

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(); });
Run Code Online (Sandbox Code Playgroud)

此代码按矢量从最小到最大排序.