gpt4 book ai didi

c++ - STL 排序保留原始顺序

转载 作者:太空宇宙 更新时间:2023-11-03 10:23:43 25 4
gpt4 key购买 nike

<分区>

我想按大小对字符串 vector 进行反向排序,但如果有 2 个长度相等的字符串,我希望它们保持原来的顺序。例如:对以下字符串集进行排序:-

aab
aac
aacghgh
aabghgh

应该产生:-

aacghgh
aabghgh
aab
aac

目前我正在做如下排序:-

struct comp_functor {
bool operator()(const string& s1, const string& s2) {
return s1.size() > s2.size();
}
};

struct comp_functor c;
vector<string> vecs;
sort(vecs.begin(), vecs.end(), c);

有没有办法在重载方法中指定如果它们具有相同的长度我想保留原始顺序?如果没有,使用 STL 库解决此问题的最佳方法是什么?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com