Leetcode题库 125.验证回文串(双指针 C实现)

文章目录

  • 思路
  • 代码

思路

Func(char c): 用于判断传入是否为大写字母或数字
第一步: 先将小写字母转化为大写字母
第二步: 调整两指针,使得其指向字母或数字
第三步: 判断两指针内容是否相等. 若相等则继续, 若不相等则ret赋值为false, 跳出while

代码

bool Func(char c){bool ret=false;if(c>=48 && c<=57) ret=true;if(c>=65 && c<=90) ret=true;return ret;
}bool isPalindrome(char * s){int l=strlen(s);char *start=s,*end=s+(l-1);bool ret=true;for(int i=0;i<l;i++){if(start[i]>=97 && start[i]<=122) start[i]-=32;}do{while(start<end && !Func(*start)){start++;}while(start<end && !Func(*end)){end--;}if(*start!=*end){ret=false;break;}else{start++;end--;}}while(start<end);return ret;
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部