c++的lower_bound这个函数对于set,map等二叉树可以用,对于vector能用吗
vector<int>v({9,8,7,1,4,5,6});//我想找出极小值点1autof=[&](inti,intb){if(v[i]<v[i-1]&&v[i]<v[...
vector<int> v({9,8,7,1,4,5,6}); //我想找出极小值点 1
auto f = [&](int i,int b)
{
if (v[i] < v[i - 1] && v[i] < v[i + 1])
{
return true;
}
else
{
return false;
}
};
auto a = v.begin() + 1;
auto b = v.end() - 2;
auto k = lower_bound(a,b,1,f); //运行到这里总是异常,为什么?
cout << 1 << endl; 展开
auto f = [&](int i,int b)
{
if (v[i] < v[i - 1] && v[i] < v[i + 1])
{
return true;
}
else
{
return false;
}
};
auto a = v.begin() + 1;
auto b = v.end() - 2;
auto k = lower_bound(a,b,1,f); //运行到这里总是异常,为什么?
cout << 1 << endl; 展开
2016-03-19
展开全部
std::set / std::map 有成员函数 lower_bound,非成员函数可以用但效率较低。std::lower_bound 可以用于 vector
追问
帮我看看上面的程序吧,为什么不行呢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询