c语言判断字符串是不是回文_125. 验证回文串
生活随笔
收集整理的這篇文章主要介紹了
c语言判断字符串是不是回文_125. 验证回文串
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
125. 驗證回文串
給定一個字符串,驗證它是否是回文串,只考慮字母和數(shù)字字符,可以忽略字母的大小寫。
說明:本題中,我們將空字符串定義為有效的回文串。
示例1:
輸入: "A man, a plan, a canal: Panama"
輸出: true示例2:
輸入: "race a car"
輸出: false題解:
本題思想就是雙指針,一個指向頭,一個指向尾,然后向彼此方向靠近。但是本題有個需要注意的點就是字符串中有可能出現(xiàn)標(biāo)點符號和空格,我們調(diào)用Java API Character.isLetterOrDigit()來判斷是不是字符串(自己手寫判斷方法也很簡單,就是根據(jù)ASCII碼判斷),我們越過所有的標(biāo)點符號,然后判斷是不是回文字符串就行。
具體代碼如下:
class Solution {public boolean isPalindrome(String s) {int left = 0, right = s.length() - 1;while (left < right) {while (left < right && !Character.isLetterOrDigit(s.charAt(left)))left++;while (left < right && !Character.isLetterOrDigit(s.charAt(right)))right--;if (Character.toLowerCase(s.charAt(left)) != Character.toLowerCase(s.charAt(right))) {return false;}left++;right--;}return true;}
}
總結(jié)
以上是生活随笔為你收集整理的c语言判断字符串是不是回文_125. 验证回文串的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我该不该有年假??我该不该有年假???我
- 下一篇: 怎么做 慢充 话费_警惕!冒充亲友骗充话