【问题标题】:How to use STL binary search operations with pairs?如何将 STL 二进制搜索操作与对一起使用?
【发布时间】:2015-04-06 21:57:55
【问题描述】:

如何使用 STL 二进制搜索操作和对? 我也希望使用 lower_bound 函数。有可能吗?

【问题讨论】:

    标签: c++ stl binary-search stl-algorithm


    【解决方案1】:

    std::pair 重载了operator<,因此任何使用排序的算法都适用于pair(假设您已经为pair 成员重载了operator<)。如果first 部分相等,则首先按first 成员排序,然后按second。不接受谓词作为参数的lower_bound 函数使用operator< 进行比较,因此它也适用于对。

    【讨论】:

    • 您能否提供示例说明如何实现它(特别是lower_bound),我仍然不清楚:)
    • 如果您的问题是如何重载 here
    • 嘿,我无法让它工作,pair 没有迭代器。您能否提供一个关于如何在say pair上使用lower_bound函数的sn-p?
    • 一个 lower_bound 是在一个集合而不是一个对象上定义的。也许我误解了你的问题——你到底想做什么?
    • 我正在搜索对 where (pair.first == foo) 我如何将其声明为 val?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 2015-02-10
    • 2021-06-25
    相关资源
    最近更新 更多