求对称字符串的最大长度
2013-03-06 10:57
183 查看
//返回最长的对称字符串的长度,如google,对称字符串是goog,最大长度为4 int symStr(char* source) { if('\0' == *source) return 0; int maxLength = 1; char* current = source; while('\0' != *current) { int max1 = 0; int symIndex = 0; // 对称游标 //(1) googllgox,对称字符个数为偶数,比如这样返回6,此时current + i + 1 while('\0' != *(current - symIndex - 1) && '\0' != *(current + symIndex) && *(current - symIndex - 1) == *(current + symIndex)) { max1 += 2; symIndex++; } maxLength = max(max1, maxLength); max1 = 1; symIndex = 1; //(2)baidudiac,对称字符个数为奇数,比如这样返回7 while('\0' != *(current - symIndex) && '\0' != *(current + symIndex) && *(current - symIndex) == *(current + symIndex)) { max1 += 2; symIndex++; } maxLength = max(max1, maxLength); ++current; } return maxLength; }代码还有很多改进的地方,留给读者自由发挥
相关文章推荐
- 找出字符串中对称的子字符串的最大长度(最长回文)
- coding - 求对称字符串的最大长度
- c语言输出字符串中最大对称子串长度的3种解决方案
- 找出字符串中对称的子字符串的最大长度(最长回文)
- 对称字符串的最大长度 【微软面试100题 第七十三题】
- 程序员面试100题之一:对称字符串的最大长度
- 程序员面试100题之一:对称字符串的最大长度
- 程序员面试100题之一:对称字符串的最大长度
- 最大对称字符串的长度
- 输入一个字符串,输出该字符串中最大对称子串的长度
- C++对称字符串的最大长度
- 微软100题(73)对称字符串的最大长度
- 求对称字符串的最大长度
- 字符串中对称子串的最大长度
- 找出字符串中对称的子字符串的最大长度(最长回文)
- 找出字符串中对称的子字符串的最大长度(最长回文)
- 对称字符串的最大长度(仅供自己复习之用)
- 程序员面试100题之一:对称字符串的最大长度
- 求字符串中对称的子字符串的最大长度
- 面试题:最长回文子串(即求对称字符串的最大长度 )