”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何通过第二个元素有效地对成对的向量进行分类?

如何通过第二个元素有效地对成对的向量进行分类?

发布于2025-02-26
浏览:936

[2每对的第二个元素按顺序排列。当为此任务创建自定义函数对象是一个可行的解决方案时,有一些替代方法利用现有的STL组件和std :: Less。

使用std ::与自定义比较器How to Efficiently Sort a Vector of Pairs by the Second Element?
一种方法是将自定义比较器作为可选的第三个参数to std :: sort。此自定义比较器(称为sort_pred)定义如下:

要使用此比较器,只需将其传递给std :: sort:

使用C 11 lambdas std :: stort(v.begin(),v.end(),v.end(),[] :: pair 左右返回。右。第二; });

使用一个通用模板进行对分类

可重复性的更高 > struct sort_pair_second { bool operator()(const std :: pair&lt&t1,t2>> lest,const std :: pair&lt&lt&lt&t1,t2>> right){ pred p; 返回p(左,第二,右。第二); } };

在此模板中,您可以按照以下方式实现所需的排序:

最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3