关于在向量中找到给定元素的位置的问题
本帖最后由 u011873969 于 2013-09-29 22:47:11 编辑
就是有一个字符串向量strvec,其中已经有了一串单词了。然后用户输入两个不同的单词key1和key2,然后编程找到二者在strvec中第一次出现的位置。我想一次性完成,但是怎么也不得要领。难道只能像下面这样弄两个循环体吗?感觉得不偿失啊!其中index是一个vector<string>::iterator,foundI和foundII是两个布尔变量,初始值都是false
向量 查找
for(index=strvec.begin();index!=strvec.end();++index)
{
if(*index==key1)
{
locuI=index;
foundI=true;
break;
}
}
for(index=strvec.begin();index!=strvec.end();++index)
{
if(*index==key2)
{
locuII=index;
foundII=true;
break;
}
}
index1 = find(strvect.begin(), strvect.end(), key1);
if((index2=find(strvect.begin(),index1, key2)) == index1){
index2 = find(index1+1, strvect.end(), key2);
}