本帖最后由 仰望的繁华 于 2015-1-28 20:46 编辑
1. 遍历找到第一个字母
2. 从下一个开始,判断ASCII当前-前一个 == 1 ?
3. 符合则计数,并继续向后判断。
4. 不符则从这个不符的开始,找之后(包括当前这个)第一个字母
5. 回到第二步
本人初学,随便说说想法,错了欢迎指正。
额,开始没看清楚题目要求,我这想法貌似只能找最大串,不包括子串啊...容我再想想。
// i:从2位 到 比长度少1位 的不同长度的子串
for(int i = 2; i < strlen(str); i++)
{
// j:判断1~i个后续字符,对应上面 i 要找的当前长度i的子串
for(int j = 0; j < i; j++)
{
// 上面提到的判断ASCII差值的方法
}
}
|