LeetCode - Palindrome Number - Frequent
来源:互联网 发布:爬虫软件干嘛用 编辑:程序博客网 时间:2024/06/02 09:50
https://leetcode.com/problems/palindrome-number/
这道题可以用不同的方法做,比如转换成string再对比,或者用Reverse Integer的解求出来再比较,但是这时候如果溢出的话就说明肯定不是palindrome了。
另外,题目要求不能有extra space。所以直接把首尾两位提出来,比较是否相等。当最后只剩一位或者不剩时,就说明是palindrome了。
代码如下:
public boolean isPalindrome(int x) { if(x<0) return false; int rank = 1000000000; while(rank>x){ rank /= 10; } if(rank <= 1) return true; while(rank > 1){ int first = x/rank; int last = x%10; if(first!=last) return false; x = (x-first*rank)/10; rank /=100; } return true; }
这里rank其实是最大位数的10^n,比如6309对应的rank就是1000. rank从大往小算是怕,如果比较rank>x的话,容易溢出,比如Integer.MAX_VALUE, 它对应的比它大的rank就溢出了。
0 0
- LeetCode - Palindrome Number - Frequent
- LeetCode - Valid Number - Frequent
- LeetCode: Palindrome Number
- LeetCode Palindrome Number
- [Leetcode] Palindrome Number
- LeetCode: Palindrome Number
- [LeetCode] Palindrome Number
- leetcode 117: Palindrome Number
- Leetcode : Palindrome Number
- 【leetcode】Palindrome Number
- [LeetCode]Palindrome Number
- LeetCode 9 - Palindrome Number
- LeetCode-Palindrome Number
- [leetcode] Palindrome Number
- LeetCode - Palindrome Number
- LeetCode | Palindrome Number
- Leetcode: Palindrome Number
- LeetCode: Palindrome Number
- x86汇编语言-01
- 路由原理
- Axis2: 学习笔记
- linux 查看磁盘空间大小
- 活动被以外回收,数据丢失了咋办
- LeetCode - Palindrome Number - Frequent
- 从子线程不能直接新建一个Handler对象来剖析android的Handler机制
- mysql 短信验证存储过程
- 窗口类结构体WNDCLASSEX介绍
- Wget命令
- 斯蒂芬森上分防守对方诗圣杜甫电视范德萨
- Emoji表情符号兼容方案
- 杭电 HDU 1196 Lowest Bit
- Linux查看系统配置常用命令