[力扣]——125.验证回文串

java 复制代码
class Solution {
    public static boolean isValidChar(char ch){
        if((ch >= 'a' && ch <= 'z') ||
           (ch >= '0' && ch <= '9')){
               return true;
       }
 
        return false;
   }
 
    public boolean isPalindrome(String s) {
    // 将大小写统一起来
        s = s.toLowerCase();
        int left = 0, right = s.length()-1;
        while(left < right){
            // 1. 从左侧找到一个有效的字符
            while(left < right && !isValidChar(s.charAt(left))){
                left++;
           }
 
            // 2. 从右侧找一个有效的字符
            while(left < right && !isValidChar(s.charAt(right))){
                right--;
           }
 
            if(s.charAt(left) != s.charAt(right)){
                return false;
           }else{
                left++;
                right--;
           }
       }
 
        return true;
   }
}
相关推荐
旖-旎1 天前
FloodFill(图像渲染)(1)
c++·算法·深度优先·力扣
帅小伙―苏1 天前
239. 滑动窗口最大值
python·力扣
语戚12 天前
力扣 3161. 块放置查询:线段树解法(Java 实现)
java·算法·leetcode·面试·线段树·力扣·
填满你的记忆13 天前
《动态规划-基础篇》
算法·动态规划·力扣
做人求其滴23 天前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
Lsk_Smion1 个月前
Hot100(开刷) 之 LRU(最近最少使用)缓存
力扣
玛卡巴卡ldf1 个月前
【LeetCode 手撕算法】(多维动态规划)不同路径、最小路径和、最长回文子串、最长公共子序列、编辑距离
java·数据结构·算法·leetcode·动态规划·力扣
旖-旎1 个月前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
玛卡巴卡ldf1 个月前
【LeetCode 手撕算法】(动态规划)爬楼梯、杨辉三角、打家劫舍、完全平方数、零钱兑换、单词拆分、最长递增子序列、乘积最大子数组、分割等和子集
java·数据结构·算法·leetcode·动态规划·力扣
玛卡巴卡ldf1 个月前
【LeetCode 手撕算法】(栈)有效括号、最小栈、字符串解码、每日温度、柱状图最大矩形
java·数据结构·算法·leetcode·力扣