给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
首先,我们应该处理一些临界情况。所有负数都不可能是回文,所以我们可以对所有负数返回 false。除了 0 以外,所有个位是 0 的数字不可能是回文,所以我们可以对所有大于 0 且个位是 0 的数字返回 false。
现在,让我们来考虑如何反转后半部分的数字。
对于数字 1221,如果执行 1221 % 10,我们将得到最后一位数字 1,要得到倒数第二位数字,我们可以先通过除以 10 把最后一位数字从 1221 中移除,1221 / 10 = 122,再求出上一步结果除以 10 的余数,122 % 10 = 2,就可以得到倒数第二位数字。如果我们把最后一位数字乘以 10,再加上倒数第二位数字,1 * 10 + 2 = 12,就得到了我们想要的反转后的数字。如果继续这个过程,我们将得到更多位数的反转数字。
现在的问题是,我们如何知道反转数字的位数已经达到原始数字位数的一半?
由于整个过程我们不断将原始数字除以 10,然后给反转后的数字乘上 10,所以,当原始数字小于或等于反转后的数字时,就意味着我们已经处理了一半位数的数字了。
class Solution {
public:bool isPalindrome(int x) {if(x<0||(x%10==0&&x!=0))return false;int y=0;while(x>y){int g=x%10;y=y*10+g;x=x/10;}return x==y||x==y/10;}
};
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。相关推荐
- Java黑皮书课后题第6章:**6.3(回文整数)使用下面的方法头编写两个方法:……使用reverse方法实现isPalindrome。如果一个数字的逆序数和它自身相等,这个数就称为回文数。
6.3(回文整数)使用下面的方法头编写两个方法:--使用reverse方法实现isPalindrome.如果一个数字的逆序数和它自身相等,这个数就称为回文数. 题目 题目概述 破题:假设没有提示语句( ...
- 12.15有一种数叫回文数,正读和反读都一样,如12321便是一个回文数。编写一个程序,从命令行得到一个整数,判断该数是不是回文数
有一种数叫回文数,正读和反读都一样,如12321便是一个回文数.编写一个程序,从命令行得到一个整数,判断该数是不是回文数 package Text6;import java.util.Scanner; ...
- 有一种数叫回文数,正读和反读都一样,如12321便是一个回文数。编写一个程序,从命令行得到一个整数,判断该数是不是回文数。
package task08;import java.util.Scanner;/** 8.有一种数叫回文数,正读和反读都一样,如12321便是一个回文数.* 编写一个程序,从命令行得到一个整数,判断 ...
- 回文数,给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
力扣题目回文数 给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 例如,121 是回文,而 1 ...
- C语言:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. 程序分析:此题要求判断一个五位数是不是回文数,首先要理解回文数的定义,然后我们就要思考如何处理我们输入的五 ...
- python实现isodd()函数、参数为整数_实现isodd()函数,参数为整数,如果政务为奇数,返回True,否则返回Flase。_学小易找答案...
[单选题]具有减轻头骨重量.温暖和湿润空气及对发音起共鸣作用的结构是 [单选题]呼吸环节不包括 [单选题]鼻腔内对气味敏感的黏膜区是 [单选题]腹腔分区中,属于腹中部的是 [单选题]下列属实质器官的是 ...
- 一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。...
题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. 思路:使用一个方法来判断这个数是否为回文数 打印出[10000,99999]之间所有的回文数 public ...
- C语言:一个五位数,判断其是否为回文数
/*一个五位数,判断其是否为回文数*/ #include <stdio.h> int main() {long x;int ge,shi,qian,wan;printf("请输入 ...
- 输入一个字符串,判断其是否为回文串。
输入一个字符串,判断其是否为回文串.例如:readdaer就是回文字符. 解题思路:定义两个变量"i,j",当i为首字符时,j为末字符,比较两者是否相同,不同则输出不是回文字符,相 ...
- 输入一个字符串,判断其是否是回文。(回文:即正读和反读都一样,如abccba, abccba)
输入一个字符串,判断其是否是回文.(回文:即正读和反读都一样,如abccba, abccba) 这里讨了个巧用了strcmp函数 注:strcmp用法: 字符串比较函数,一般形式为strcmp(字符串 ...
最新文章
- 深入探索JVM自动资源管理
- C#跳转语句 迭代法 穷举法
- 在GridView里使用上下箭头(小键盘旁边)来选择记录
- 生成 PDF 全攻略【1】初体验
- Linux(四) 用户、用户组
- 流行趋势-立体感和艺术剪纸风海报美妆设计
- 仿照七牛云图片处理类实现的C#帮助类
- C 和 CPP 混合代码cmath编译出错
- Shiro入门视频课程——笔记(一)
- vba遍历字符串_操蛋的VBA程序错误!
- win10安装ipython_win10下安装Anaconda的教程(python环境+jupyter_notebook)
- 美团打车已攻到北京,滴滴还在忙着收小蓝单车?
- swagger2.2.2报错:relProviderPluginRegistry,linkDiscovererRegistry,entityLinksPluginRegistry
- paip.提升效率---request自动绑定domain object
- 添加logviewer用户
- 词性标注:中文词性标注简介
- 除了 P 站,程序员摸鱼还喜欢上哪些网站?
- 汉思新材料:无人机控制板BGA芯片底部填充胶应用
- 昨日种种死 今日种种生
- Buhtrap在最新监控活动中使用多个0 day漏洞