RT.
class Test
{
public:
Test(const Test& t)
{
num = t.num;
score = t.score;
}
Test(int n, float s):num(n), score(s){}
private:
int num;
float score;
};
按score进行查找,使用binary_search算法。谢谢
给个STL binary_search对类进行查找的例子
答案:3 悬赏:70 手机版
解决时间 2021-02-21 00:28
- 提问者网友:捧腹剧
- 2021-02-20 09:33
最佳答案
- 五星知识达人网友:话散在刀尖上
- 2021-02-20 10:35
#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>
using namespace std;
class Test
{
public:
int num;
float score;
Test(const Test& t)
{
num = t.num;
score = t.score;
}
Test(int n, float s):num(n), score(s){}
//使用binary_serach的类必须要重载<
///////函数后面的const千万不要掉,否则,会编译出错
bool operator <(const Test& t) const{
if(score<t.score){
return true;
}
else{
return false;
}
}
};
int main(){
vector<Test> vec;
for(int i=0; i<10; i++){
vec.push_back(Test(i, i));
}
cout<<binary_search(vec.begin(), vec.end(), Test(2, 2))<<endl;
cout<<binary_search(vec.begin(), vec.end(), Test(1, 10))<<endl;
return 0;
}
#include <algorithm>
#include <vector>
#include <iterator>
using namespace std;
class Test
{
public:
int num;
float score;
Test(const Test& t)
{
num = t.num;
score = t.score;
}
Test(int n, float s):num(n), score(s){}
//使用binary_serach的类必须要重载<
///////函数后面的const千万不要掉,否则,会编译出错
bool operator <(const Test& t) const{
if(score<t.score){
return true;
}
else{
return false;
}
}
};
int main(){
vector<Test> vec;
for(int i=0; i<10; i++){
vec.push_back(Test(i, i));
}
cout<<binary_search(vec.begin(), vec.end(), Test(2, 2))<<endl;
cout<<binary_search(vec.begin(), vec.end(), Test(1, 10))<<endl;
return 0;
}
全部回答
- 1楼网友:独钓一江月
- 2021-02-20 12:28
佛曰;一杯清水,一盏灯。 问心无愧,照亮心非
- 2楼网友:痴妹与他
- 2021-02-20 11:08
你好!
佛曰;一杯清水,一盏灯。 问心无愧,照亮心非
如有疑问,请追问。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯