我想归因于迭代器另一个+1的地址继续到字符串 vector 中,这是我的代码:

'    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进入 vector 的右边。请帮我。

最佳答案

以下代码可以完成工作。刚刚更改了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;
        }
    }
}

09-10 04:39