Palindrome Number(求一个数是否是回文整数)
来源:互联网 发布:淘宝手机怎么上传宝贝 编辑:程序博客网 时间:2024/06/02 03:12
原题地址:https://leetcode.com/problems/palindrome-number/
原题题意:Determine whether an integer is a palindrome. Do this without extra space.
解析:此题可以借用前面的题目:求回文串 的思路
将一个int 转化为string,进而就变成了求回文串的 题目。
class Solution {public: bool isPalindrome(int x) { if(x<0) return false; string s; while(x){ s.push_back(x%10); x/=10; } int len = s.length(); int i,j; for(i = 0,j = len-1;i<=j;++i,--j){ if(s[i]!=s[j]){ return false; } } return true; }};
2.但是此处不符合题意,题目中说明:不能使用额外的空间。那么我们就举个例子来找找思路
比如: 13431 1331
我们发现 不管从左往右还是从右往左读都是一样的
因此我们可以求出该数的位数div,借用位数直接取出最高位和最低位进行比对。
class Solution {public: bool isPalindrome(int x) { if (x < 0) return false; int div = 1; while (x / div >= 10) { div *= 10; //div表示位数 } while (x != 0) { int l = x / div; int r = x % 10; if (l != r) return false; x = (x % div) / 10;//关键步骤 13431===> 343 div /= 100; } return true; }};
0 0
- Palindrome Number(求一个数是否是回文整数)
- 判断一个整数是否是回文数 Palindrome Number
- Palindrome Number 判断一个整数是否是回文数
- [Leetcode #9]Palindrome Number 判断一个整数是否是回文数
- 9. Palindrome Number(判断一个整数是否为回文数)
- Palindrome Number (判定一个整数是否是回文)
- Palindrome Number leetcode 判断一个整数是否是回文
- [C++]LeetCode 9: Palindrome Number(判断整数是否是回文数)
- 判断一个整数是否为回文数 Check if a number is palindrome
- leetcode_9. Palindrome Number 判断一个整数是否是回文串数字
- 判断一个整数是否是回文数
- 判断一个整数是否是回文数
- 判断一个整数是否是回文数
- 【数字】判断是否是回文数Palindrome Number
- Palindrome Number 判断一个数字是否是回文数字@LeetCode
- leetcode palindrome-number(判断一个数字是否是回文)
- Palindrome Number 判断整数是否回文
- 输入一个整数,然后判断是否是回文数
- 大二 新的开始。
- mysql忘记密码修改
- 网页字体设置你了解吗
- Jetty 的工作原理以及与 Tomcat 的比较
- Android Bottom Sheet详解
- Palindrome Number(求一个数是否是回文整数)
- 【索引】PAT乙级题目题解
- Android 命名规范 (提高代码可以读性)
- Python排列组合
- 内部排序与外部排序
- 【开发】实用小技巧
- CentOS系统 NTFS-3G挂载NTFS分区
- JavaScript 开发最佳实践
- Java synchronized详解