读书人

关于搜索的有关问题

发布时间: 2012-02-07 17:45:36 作者: rapoo

关于搜索的问题
我定义了如下的数据
typedef pair <string, double> DATA1;
typedef vector <DATA1> DATA2;
现在要通过对string的查找来找到与之相关的double型数值,我使用binary_search来进行查找工作,但是发现binary_search只返回是否存在该string,不能吧该DATA1的脚标返回,同样用equal_rang也只返回与待查string相等的一个区间,既pair <DATA1,DATA1> ,其中DATA1::first都与待查string相等,但我仍然无法知道脚标是多少,请问有什么可以变通的办法

[解决办法]
得用lower_boud,它的返回值(先检查是否找到)-v.begin()即是下标。

读书人网 >C++

热点推荐