向量上的二进制排序

Binary sort on a vector

本文关键字:排序 二进制 向量      更新时间:2023-10-16

我正在按以下方式对字符串向量进行排序,以便以后可以binary_search它。

std::vector<std::string> vec;
...........
...........
std::sort(vec.begin(),vec.end());

现在我正在搜索它,如下所示。

if (!std::binary_search(vec.begin(), vec.end(), "SomeString"));
{
    //Not Found
}
else
{
    //Found
}

但是,似乎binary_search不起作用,并且它向向量中存在的"字符串"返回 false。

我可能做错了什么?

看看这一行的最后一个字符:

if(!std::binary_search(vec.begin(),vec.end(),"SomeString"));

你那里有一个放错地方的;。将其删除并再次测试。