125. 验证回文串

    科技2024-06-03  80

                               125. 验证回文串

     

    给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。

    说明:本题中,我们将空字符串定义为有效的回文串。

    示例 1:

    输入: "A man, a plan, a canal: Panama" 输出: true

    示例 2:

    输入: "race a car" 输出: false 题解:先过滤到非数字和字母的字符,再将大写字母都变成小写字母,然后再进行比对。 code: class Solution { public boolean isPalindrome(String s) { int start = 0, end = s.length() -1; boolean isFlag = true; while (start <= end) { char a = s.charAt(start); char b = s.charAt(end); if (!((a >= 'A' && a <= 'Z') || (a >= 'a' && a <= 'z') || (a >= '0' && a <= '9'))) { start++; continue; } if (!((b >= 'A' && b <= 'Z') || (b >= 'a' && b <= 'z') || (b >= '0' && b <= '9'))) { end--; continue; } if (a >= 'A' && a <= 'Z') { a = (char)(a + 32); } if (b >= 'A' && b <= 'Z') { b = (char)(b + 32); } if (a != b) { isFlag = false; break; } start++; end--; } return isFlag; } }

     

    Processed: 0.008, SQL: 8