判断当前元素上一次出现的索引c++
介绍
有的时候我们需要找到当前元素上一次出现时的索引,例如
第二个a出现时候,上一个a的索引为0(这里n是从0开始的)。abcdadv
代码
string s = "abcdadv";
int last[1000];
memset(last, 0, sizeof last);
// 这是为了将s的索引从1开始的。
s = ' ' + s;
// 如果是第一次出现那么last就是0
for (int i = 1; i < (int)s.size(); i ++ )
{
cout << last[s[i] - 'a'] << ' ';
last[s[i] - 'a'] = i;
}
版权声明:
作者:徐锦桐
链接:https://www.xujintong.com/2023/03/04/133/
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
作者:徐锦桐
链接:https://www.xujintong.com/2023/03/04/133/
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
THE END