自定义一个结构体,用vector存放这个结构体型数据,在push_back的时候实现对vector内元素按结构体某一成员进行排序,详见参考博文。
核心代码如下,详细且可运行代码可看参考博文。
struct pstr
{
int a, b;
double pri;
};
// from larger to smaller
bool comp(const pstr ps1, const pstr ps2)
{
return ps1.pri> ps2.pri;
}
vector<pstr> tpri;
pstr tmprio;
for (int r = 0; r < 200; r++)
{
for (int c = 0; c < 100; c++)
{
tmprio.pr = r;
tmprio.pc = c;
tmprio.pri= 1000 *r+c;
tpri.push_back(tmprio);
}
}
}
sort(tpri.begin(), tpri.end(), comp);
参考博文: