LeetCode125 驗證回文串

LeetCode125 驗證回文串

題目描述:

給定一個字符串,驗證它是否是回文串,只考慮字母和數(shù)字字符,可以忽略字母的大小寫。
說明:本題中,我們將空字符串定義為有效的回文串。
示例 1:

輸入: "A man, a plan, a canal: Panama"
輸出: true
示例 2:

輸入: "race a car"
輸出: false
復(fù)制代碼

代碼:

 public boolean isPalindrome(String s) {
       // 使用左右兩個標(biāo)記位
       int left = 0;
       int right = s.length()-1;
       while (left < right) {
           // 從左側(cè),找到是數(shù)字或者字母的
           while (left < right && !Character.isLetterOrDigit(s.charAt(left))) {
               left++;
           }
          // 從右側(cè),找到是數(shù)字或者字母的
           while (left < right && !Character.isLetterOrDigit(s.charAt(right))) {
               right--;
           }
           if (left < right) {
               // 找到數(shù)字或者字母的左右兩個標(biāo)記位的元素不等(注意都轉(zhuǎn)化成小寫的字母),返回false
               if (Character.toLowerCase(s.charAt(left)) != Character.toLowerCase(s.charAt(right))) {
                   return false;
               }
               ++left;
               --right;
           }
       }
       return true;
   }
復(fù)制代碼
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容