最近太忙,好几天没巩固基础了。今天,求一个字符串你的最长回文子串。
思路:回文字符串就是说该字符串从前往后和从后往前的内容是一样的。
所以,可以用指针指向数组的某一元素,从该元素向后和向前遍历,如果一样则说明该子串是回文子串。
比如"abcdefe"中“efe”就是一个回文字符串。
当然“abba”中"abba"就是一个回文字符串。
所以说,回文字符串可以是单数,也可以是双数。
#include<iostream>
int getHuiWenSubStr(char* str, int length)
{
//入参判断
if(!str || lenth < 1) //字符串为空或者指针为nullptr时
{
return 0;
}
int maxLen = 0; //存放最终结果:回文子串的长度
int curSubStrLen = 0; //存放当前指针遍历的过程中回文子串的长度
//遍历整个字