自己一直用vector 二维的存储变量 有时候需要进行排序 在此 为记录一下方法 废话少说直接上代码
#include <QCoreApplication> #include <iostream> using namespace std; #include <vector> #include <string> #include <algorithm> #include <QDateTime> #include <QTimer> #include <qdebug.h> bool cmp1(const vector<int> &a, const vector<int> &b) { return a[0] > b[0]; } int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); vector<vector<int>> viA(10); for (int i = 0; i < 10; i++) { for (int j = 0; j < 3; j++) { viA[i].push_back(rand() % 100); } } cout<< "no :" << endl; for (int i = 0; i < 10; i++) { for (int j = 0; j < 3; j++) { cout << viA[i][j] << " "; } cout << endl; } cout << "sort :" << endl; sort(viA.begin(), viA.end(), cmp1); for (int i = 0; i < 10; i++) { for (int j = 0; j < 3; j++) { cout << viA[i][j] << " "; } cout << endl; } return a.exec(); }
运行结果:
no 锛 41 67 34 0 69 24 78 58 62 64 5 45 81 27 61 91 95 42 27 36 91 4 2 53 92 82 21 16 18 95 sort 锛 92 82 21 91 95 42 81 27 61 78 58 62 64 5 45 41 67 34 27 36 91 16 18 95 4 2 53 0 69 24