标签:palindrome Palindrome return int Number right false LeetCode left
LeetCode 9. Palindrome Number
9.Palindrome Number
Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.
Example 1:
Input: 121
Output: true
Example 2:
Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:
Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
求出回文数对比
将数字反转进行对比。可以参考LeetCode 7。
public boolean isPalindrome(int x) {
if(x < 0){
return false;
}
int res = 0;
int y = x;
while(y != 0){
res = res* 10 + (y % 10);
y = y/10;
}
return x==res;
}
数字转字符串
将数字转换成字符串,然后使用两个指针左右进行对比。不过这样做效率很低。因为还要考虑数字转字符串的成本。
if(x < 0 || x >= Integer.MAX_VALUE){
return false;
}
String s = String.valueOf(x);
int len = s.length();
int left = 0;
int right = len -1;
while(left < right){
if(s.charAt(left) != s.charAt(right)){
return false;
}
left++;
right--;
}
return true;
}
right--;
}
return true;
}
goasleep
发布了27 篇原创文章 · 获赞 8 · 访问量 3万+
私信
关注
标签:palindrome,Palindrome,return,int,Number,right,false,LeetCode,left 来源: https://blog.csdn.net/qq_32763643/article/details/104090957
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。