算法题每日一练---第71天:回文数

简介: 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

3.png

一、问题描述


给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false


回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,121 是回文,而 123 不是。


题目链接:回文数

二、题目要求


样例 1

输入: x = 121
输出: true


样例 2

输入: x = -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。


考察

数学思想、回文判断
建议用时15~35min


三、问题分析


回文数咩!搞起来。


25.gif


回文数就是从前向后遍历的结果和从后向前的遍历结果对应相等,平常和栈结合起来的应用不少,但这一题比较简单,我们直接用数组存储数字就行。


首先,负数直接输出false,因为-号没法和其它的数字配对。


其次,数据范围最多10位,用一个12位大小的数组存储每一位数字绰绰有余。

先将数字按照顺序存入数组之后,首位依次判断,不相等返回false。

最后,上面错误的条件都不满足的话,那么返回true。


四、编码实现


classSolution {
public:
boolisPalindrome(intx) {
if(x<0)//负数返回falsereturnfalse;
inti,n=0,a[12];//初始化数据while(x)//数字存入数组        {
a[n++]=x%10;
x=x/10;
        }
for(i=0;i<n/2;i++)//首尾依次向内收缩判断if(a[i]!=a[n-i-1])//不相等,输出falsereturnfalse;
returntrue;//返回true    }
};

五、测试结果100.png

相关文章
|
1月前
|
算法 Java
[Java·算法·简单] LeetCode 9. 回文数 详细解读
[Java·算法·简单] LeetCode 9. 回文数 详细解读
53 0
|
1月前
|
算法 Java C++
试题 算法训练 回文数
试题 算法训练 回文数
30 0
|
8月前
|
自然语言处理 Rust 算法
【算法】9. 回文数(多语言实现)
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。
|
1月前
|
算法 Java
[Java·算法·简单] LeetCode 9. 回文数 详细解读
[Java·算法·简单] LeetCode 9. 回文数 详细解读
26 0
|
1月前
|
算法 Java C#
Leetcode算法系列| 9. 回文数
Leetcode算法系列| 9. 回文数
|
8月前
|
算法 前端开发
|
存储 算法
算法练习:回文数
算法练习:回文数
101 0
|
人工智能 算法 C#
C语言经典算法实例4:判断回文数
C语言经典算法实例4:判断回文数
C语言经典算法实例4:判断回文数
|
存储 前端开发 算法
LeetCode回文数使用JavaScript解题,一种不太正经的解法|前端学算法
LeetCode回文数使用JavaScript解题,一种不太正经的解法|前端学算法
66 0
LeetCode回文数使用JavaScript解题,一种不太正经的解法|前端学算法
|
算法 前端开发 测试技术
【前端算法】获取1-10000之间的所有回文数
获取1-10000之间的所有回文数的几种思路以及比较