vector自定义排序

自定义一个结构体,用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);

参考博文:

从最简单的vector中sort用法到自定义比较函数comp后对结构体排序的sort算法

猜你喜欢

转载自blog.csdn.net/u012428169/article/details/72857228
今日推荐