排序多维向量

Sort Multidimensional Vector

本文关键字:向量 排序      更新时间:2023-10-16

我有一个二维向量a

vector < vector <int> > A;

内向量的长度为常数3。我要根据内向量中第二个元素的值对A排序。就像我们可以根据数据库表的任何列来排序一样。

我该怎么做?

std::sort(std::begin(m), std::end(m),
          [](std::vector<int> const &lhs,
             std::vector<int> const &rhs) { return lhs[1] < rhs[1]; });

要小心,因为这不是一个稳定的排序,并且不会保留具有相同第二元素的行的顺序。如果你想要这个,使用std::stable_sort。用法相同