我有一个向量的向量,我想按每个向量的大小对它进行排序!该怎么做!我想使用sort函数,但是我找不到任何参数来确定我想按内容大小进行排序。
你只需要指定一个谓词:
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(); });
这段代码将向量从小到大排序。
std::sort
的描述中的(2),然后向下滚动到第二个示例,该示例演示了如何使用它。 - WhozCraig