我想将迭代器的另外一个+1的归因赋给迭代器,然后将其放入字符串向量中。这是我的代码:
' for(auto it:cuvinte)
{
int nr=1;
incercare.clear();
incercare.push_back(it);
for(auto i2:cuvinte)
{
if(incercare.back()[incercare.back().size()-1]==i2[0])
{
++nr;
incercare.push_back(i2);
}
if(nr>maxim)
{
maxim=nr;
solutie=incercare;
}
}'
我想让i2的ad + 1进入向量的右边。请帮助我。
答案 0 :(得分:0)
所以这是上面的代码,重写为使用迭代器而不是基于范围的for循环。恐怕我还是不明白你想做出什么改变。
for (auto it = cuvinte.begin(); it != cuvinte.end(); ++it)
{
int nr = 1;
incercare.clear();
incercare.push_back(*it);
for (auto i2 = cuvinte.begin(); i2 != cuvinte.end(); ++i2)
{
if (incercare.back()[incercare.back().size()-1] == (*i2)[0])
{
++nr;
incercare.push_back(*i2);
}
if (nr > maxim)
{
maxim = nr;
solutie = incercare;
}
}
}
答案 1 :(得分:0)
以下代码可以完成工作。刚刚更改了innerloop的起点。
for (auto it = cuvinte.begin(); it != cuvinte.end(); ++it)
{
int nr = 1;
incercare.clear();
incercare.push_back(*it);
for (auto i2 = it+1; i2 != cuvinte.end(); ++i2)
{
if (incercare.back()[incercare.back().size()-1] == (*i2)[0])
{
++nr;
incercare.push_back(*i2);
}
if (nr > maxim)
{
maxim = nr;
solutie = incercare;
}
}
}