Leetcode练习 #9 Palindrome Number
来源:互联网 发布:简单软件 编辑:程序博客网 时间:2024/05/20 08:26
题目简析:题意是判断一个数字是否为回文数字,回文的定义自然是和回文字符串意思一样啦,不过数字不是字符串,不能很随意地取出首位末位等对称位置的字符进行比较,当然转换成字符串再比较也是一个方案,不过题目有空间限制,而且这样效率也比较低。因此我的思路是对数字实现一个“逆转”操作,将逆转后数字与原输入数字对比,若一样,自然说明了这个数字是回文数字。
那么如何实现逆转呢?这里我们设定2个数字,一个num1,一个num2。num1是输入数字,num2暂时是0,但最后我们会让它变成num1的逆转数字。
首先我们观察这个“逆转的过程”,假设num1=12321
num1: 12321 -> 1232 -> 123 -> 12 -> 1 -> 0
num2: 0 -> 1 -> 12 -> 123 -> 1232 -> 12321
显然,实现逆转的操作很简单,只要不断对num1取除以10的余数(num1%10),把获得的余数添加到num2(num2=num2*10+余数),并对num1减一位(num1/10),不断重复这个过程即可
下面附上代码
class Solution {public: bool isPalindrome(int x) { if(x<0) return false; else if(x<10) return true; int num1=x; int num2=0; int n; while(num1>0){ n=num1%10; num2=num2*10+n; num1=num1/10; } return (num2==x); }};
Submission Result: Accepted
Runtime: 0 ms
题目链接:https://leetcode.com/problems/palindrome-number/description/
阅读全文
0 0
- Leetcode练习 #9 Palindrome Number
- LeetCode练习-数组-palindrome-number
- LeetCode 9 - Palindrome Number
- leetcode 9 Palindrome Number
- Leetcode【9】:Palindrome Number
- [leetcode 9] Palindrome Number
- [Leetcode] 9 - Palindrome Number
- LeetCode(9) Palindrome Number
- [leetcode 9] Palindrome Number
- LeetCode 9:《Palindrome Number》
- leetcode.9---------------Palindrome Number
- leetCode #9 Palindrome Number
- leetcode 9 Palindrome Number
- LeetCode 9: Palindrome Number
- leetcode-9 Palindrome Number
- LeetCode 9 Palindrome Number
- LeetCode 9 Palindrome Number
- LeetCode 9 - Palindrome Number
- kendo ui 日期控件格式不正确问题
- 水晶报表ActiveX打印设置
- Java EE开发第六章:JDBC开发之DBCP连接池的使用
- (---关于oracle服务器和客户端字符集---)导出的pde是正常的(因为通过其他的plsql中导入没有问题),但是通过plsql导入后,显示乱码,怎么解决?
- 内存管理
- Leetcode练习 #9 Palindrome Number
- 写一点Linux知识(准备长期更新)
- css3选择器(全)
- 在AsyncTask中使用自定义loadingDialog时报错:DecorView not attached to window manager
- Spring中配置事物注解的方式: @Transactional
- codeforces 138E. Hellish Constraints
- hiho一下 第168周 扩展二进制数
- 阿里云 互联网 产品 总结
- opencv开发笔记(五):滑动条控制图像的融合