125. 驗證迴文串(雙指標)1
阿新 • • 發佈:2020-12-20
技術標籤:LeetCode
給定一個字串,驗證它是否是迴文串,只考慮字母和數字字元,可以忽略字母的大小寫。
說明:本題中,我們將空字串定義為有效的迴文串。
示例 1:
輸入: "A man, a plan, a canal: Panama"
輸出: true
示例 2:
輸入: "race a car"
輸出: false
解法一:雙指標
public class Solution { public boolean isPalindrome(String s) { if (s == " ") return true; int start = 0, end = s.length() - 1; while(start <= end) { if (!Character.isLetterOrDigit(s.charAt(start))) { start++; } else if(!Character.isLetterOrDigit(s.charAt(end))) { end--; } else { if (Character.toLowerCase(s.charAt(start)) != Character.toLowerCase(s.charAt(end))) { return false; } start++; end--; } } return true; } }