給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明:本題中,我們將空字串定義為有效的回文串。
示例 1:
輸入: "a man, a plan, a canal: panama"
輸出: true
示例 2:
輸入: "race a car"
輸出: false
思路一:先把字串其他字元去掉,只保留字母、數字,然後判斷再判斷字串的第乙個字元與最後乙個字元是否相等,逐步比較。
class
solution
s = s.
replaceall
("[^a-za-z0-9]",""
).tolowercase()
;char
array = s.
tochararray()
;for
(int i =
0; i < array.length /
2; i++)}
return
true;}
}
解法二:呼叫api解決。
class
solution
char
array = s.
tochararray()
; stringbuilder sb =
newstringbuilder()
;for
(int i =
0; i < array.length ; i++)}
return sb.
tostring()
.equalsignorecase
(sb.
reverse()
.tostring()
);}}
演算法 驗證回文串
驗證回文串 給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true 示例 2 輸入 race a car 輸出 false演算法是乙個不斷優化的...
演算法 驗證回文串(isPalindrome)
給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true 示例 2 輸入 race a car 輸出 false思路 1.首先判斷s是否為為空串或...
每日一題 18 驗證回文串
給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true 示例 2 輸入 race a car 輸出 false 思路 從字串開頭與末端同時遍歷字...