bool judge(char *s,int m,int n){ while(m<n){ if(s[m]!=s[n]){ return false; } m++,n--; } return true; } bool validPalindrome(char * s){ for(int i=0,j=strlen(s)-1;i<j;i++,j--){ if(s[i]!=s[j]){ return (judge(s,i+1,j)||judge(s,i,j-1)); } } return true; } 这个题直接背大佬代码吧,自己写总有变态样例卡住