LeetCode第9题:Palindrome Number
来源:互联网 发布:r软件使用统计分析 编辑:程序博客网 时间:2024/05/17 01:35
问题描述:判断一个数是不是回文数。
回文数:就是从左往右念和从右往左念都是一样的,对称的一个数,如121,789987等。
注意:负数不是回文数,如-121。
解题思路一:如果一个数倒序输出后还等于原始的值,那么该数为回文数。
#include <iostream>using namespace std;class Solution {public:bool isPalindrome(int x){int xFirst=x;int reverseX=0; int temp; if (x<0)//如果输入的是负数,肯定不是回文数{ return false; } while(x>0)//当x>0,判断整数倒序的数字是否=原先的数字,如果是,肯定是回文数,如果不是,肯定不是{ temp=x%10; reverseX=reverseX*10+temp; x=x/10; } if (xFirst==reverseX){return true;}else{return false;}}};int main(){Solution s;bool isOrNot=s.isPalindrome(789987);cout<<isOrNot<<endl;return 0;}
解题思路2:如果一个数最左边的数等于最右边的数,然后再去除这两个数,然后再判断最左边的数依然等于最右边的数,直到最后一个数,那么该数为回文数。
#include <iostream>using namespace std;class Solution {public:bool isPalindrome(int x){if (x<0)//如果x小于0,不是回文数{return false;}int X_len=1;while (x/X_len>=10)//得到x是几位数{X_len*=10;}while(x>0){int numberLeft=x/X_len;//得到当前x最左边的数int numberRigth=x%10;//得到当前x最左右边的数if (numberRigth != numberLeft)//如果左右两个数字不相等{return false;}else//如果相等,继续执行{x=(x%X_len)/10;X_len=X_len/100;}}return true;}};int main(){Solution s;bool isOrNot=s.isPalindrome(7891987);cout<<isOrNot<<endl;return 0;}
在leetcode里面提交的结果是第一种方法貌似比第二种要快。
0 0
- leetcode 第9题 Palindrome Number
- LeetCode 第 9 题(Palindrome Number)
- Leetcode第9题Palindrome Number
- LeetCode第9题:Palindrome Number
- 【LeetCode】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
- 给数据增加测试数据的存储过程
- 动态规划之滑雪(百练1088)
- Linux vi 常用命令
- 【Mybatis】——配置文件学习
- 学习设计模式-单例模式
- LeetCode第9题:Palindrome Number
- jquery中的extend
- 泛型
- PHP超级全局变量、魔术变量和魔术函数
- 给数据库增加数据的存储过程
- App跨平台开发方案与取舍
- Hihocoder 1014Trie树(字典树模板)
- angularJS实现动态添加,删除div
- 增加数据存储过程