在網上找了幾個版本,改編的,好難啊。加油。
//最大回文子串問題
#include#includeusing namespace std;
//返回最長的回文子串
char *max_substring_bxy(char *str,int &length)
} for(int i = 0; i < m; ++i) //不預先判斷奇偶,先奇後偶,max自動更新
}for(int j = 0; i - j >= 0 && i + j < m; ++j) //最長回文字串為偶數
}} }
char *s = new char[100];
int c = 0;
for(int i=x; i<=y; i++)
length = (y-x+1);
s[c]='\0';
return s;
}//返回最長回文子串的長度
int lengthofmaxsubstring(char *str)
} for(int i = 0; i < m; ++i)
} if(ok && j - i + 1 > max)
}} }
return max;
}int main()
{ char a = "abcbawwwwa";
int num=0;
char *str = max_substring_bxy(a,num);
int len = lengthofmaxsubstring(a);
cout <<"源字串:"<
面試題 最長回文子串
這個也算是很經典的題目了,o n 的解法還是要自己鑽進去想一想的,不能總以為自己會了,動手寫一寫才是王道。題大家應該都知道,我就直接用ppt裡面的了。例如ababcdedcbaab,最長回文子串是abcdedcba。暴力解法1 列舉起點o n 列舉終點o n 判斷回文o n 總複雜度o n 3 暴力...
最長回文子串 最長回文子串行
1.最長回文子串行 可以不連續 include include include include using namespace std 遞迴方法,求解最長回文子串行 intlps char str,int i,int j intmain include include include using n...
筆試面試題(8) 回文子串
1 驗證整個字串是不是回文 最簡單的了 直接驗證或遞迴驗證都可以.2 求連續的回文子串,如 abdadbx,則回文子串就是bdadb 整個有乙個最優的演算法為 中心法求最長回文子串 線性複雜度 具體的部落格 寫的真好!include includeconst int m 110010 2 char ...