0
点赞
收藏
分享

微信扫一扫

MySQL 8.0.36 WorkBench安装

邯唐情感 2024-02-21 阅读 8

文章目录

思路

👨‍🏫 参考题解
Character.isLetterorDigit(char c):判读字符 c 是否是字母或者数字
Character.toLowerCase(char c):将字符 c 转换为小写字母

复杂度

时间复杂度: O ( n ) O(n) O(n)

空间复杂度: O ( 1 ) O(1) O(1)

Code

class Solution {
    public boolean isPalindrome(String s) {
        int l = 0;
        int r = s.length() - 1;
        while(l < r )
        {
            while(l < r && !Character.isLetterOrDigit(s.charAt(l)))//跳过无效字符
                l++;
            while(l < r && !Character.isLetterOrDigit(s.charAt(r)))//跳过无效字符
                r--;
            if(Character.toLowerCase(s.charAt(l)) != Character.toLowerCase(s.charAt(r)))
                return false;
            l++;
            r--;
        }
        return true;
    }
}
举报

相关推荐

0 条评论