問題:
給一整數,檢測是否正著唸和倒著唸都一樣
範例:
1. 輸入: x =121 輸出: true
2. 輸入: x =-121 輸出: false (反過來是121-)
3. 輸入: x =10 輸出: false(反過來是01)
提問:
負數處理? 單一數字? 0能作為數字開頭嗎?
一般想法:
數字轉字串,分割放入陣列,反轉陣列順序,轉回字串後比對。
進階解法:
沒有特別快的解法,所以重點放在限制條件上
程式:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var isPalindrome = function (x) { | |
if (x < 0) return false; | |
if (x % 10 == 0 && x != 0) return false; | |
var x_str = x.toString(); | |
if (x_str.length == 1) return true; | |
var reverse = x.toString().split('').reverse().join(''); | |
return x_str == reverse; | |
} |
文章標籤
全站熱搜