降序排序的最佳方法

Best way to sort in descending order

这样排序是不是更省时:

    sort(ar,ar+n,greater<int>());

    bool MyF(int a,int b){ return a>b; }
    sort(ar,ar+n,MyF);

取决于 ar 是什么。如果它是一个序列容器,反向迭代器就是你的朋友:

std::sort(ar.rbegin(), ar.rend());

否则,是的,std::greater<int> 似乎适合这项任务...

至于您的两个示例中的哪一个是 "better",嗯,它们在功能上是等效的,前者使用经过测试的标准库功能,可以为您完成工作。坦率地说,我认为没有竞争。