Leetcode No.9
JS 1°
var isPalindrome = function(x) {
if(x>=0){
let str = x.toString();
if((str.length)%2==0){
let str4 = str.slice(0, (str.length / 2));
let str5 = str.slice((str.length / 2), str.length).split('').reverse().join('');
if (str4 == str5) {
return true;
} else {
return false;
}
}else{
let str1 = str.slice(0,(str.length+1)/2);
let str2 = str.slice((str.length-1)/2,str.length);
let str3 =str2.split('').reverse().join('');
if(str1==str3){
return true;
}else{
return false;
}
}
}else{
return false;
}
};
经典笨法,字符串、数组各种转,很笨很臃肿。
JS 2°
var isPalindrome = function(x) {
return Number(`${ Math.abs(x)}`.split('').reverse().join(''))==x
};
题解里看到的代码,就tm一行。。。
看了这个才发现我想麻烦了,不用从中间分开看两边,直接倒过来不就行了,笨比石锤。。。
python
同样的,知道一行解法之后,python也可以
class Solution:
def isPalindrome(self, x: int) -> bool:
return str(x) == str(x)[::-1]
还没有评论,来说两句吧...