首页 > 试题广场 >

回文数字

[编程题]回文数字
  • 热度指数:38707 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
在不使用额外的内存空间的条件下判断一个整数是否是回文。
回文指逆序和正序完全相同。


数据范围:
进阶: 空间复杂度 ,时间复杂度

提示:
负整数可以是回文吗?(比如-1)
如果你在考虑将数字转化为字符串的话,请注意一下不能使用额外空间的限制
你可以将整数翻转。但是,如果你做过题目“反转数字”,你会知道将整数翻转可能会出现溢出的情况,你怎么处理这个问题?
示例1

输入

121

输出

true
示例2

输入

122

输出

false
头像 Maokt
发表于 2021-07-13 15:06:45
精华题解 算法思想一:双指针 解题思路: 1、特殊情况,当 x<0 时,直接返回 false 2、将 x 转换为字符串,设置双指针left 指向第一个数字,right 指向最后一位数字 3、对比 left、right指向的数字是否相同     1、不同则 展开全文
头像 堆栈哲学
发表于 2021-07-13 16:30:26
精华题解 题意分析: 在不使用额外的内存空间的条件下判断一个整数是否是回文数字 如果使用NC57反转数字 的思路,注意溢出的处理 考虑负数的特判 解法一:数学 一个直观的算法,就是将所给数字反转之后与原来的数字进行比较,如果相等怎么时回文数(当然要考虑负数的情况) 关于如何反转一个数字串,请参考NC 展开全文
头像 2019113913
发表于 2021-07-09 21:14:33
精华题解 题意思路: 判断一个整数是否是回文,回文指若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。 方法一:转换为数字 可以将数字从最低位向最高位枚举得到逆序数字,比较是否相同,若相同则是回文数,若不相同则不是回文数。 复杂度分析: 时间复杂度:O(m),m为数字长度,遍历数字各位的数字。 展开全文
头像 华科不平凡
发表于 2020-08-24 11:33:57
非反转的常数级别空间复杂度解法: 首先计算出数字的位数 然后从数字两边向中间遍历,判断对称部位的数字是否相等 class Solution { public: /** * * @param x int整型 * @return bool布尔型 * 展开全文
头像 超级码力233
发表于 2020-11-26 16:07:59
palindrome-number 题目链接 Solution 判断一个数字是否是回文串。回文串的定义是正着读和反着读相同,所以我们可以把数字反转后,判断两个数字是否一样即可。反转数字的方法是将n不断对10取模,然后除以10。 Code class Solution { public: bo 展开全文
头像 破竹GYH
发表于 2022-02-21 22:51:31
//直接用函数转换成字符,双指针判断 public: /** * * @param x int整型 * @return bool布尔型 */ bool isPalindrome(int x) { // write code 展开全文
头像 牛客449560839号
发表于 2021-10-30 08:57:11
import java.util.*; public class Solution { /** * * @param x int整型 * @return bool布尔型 */ public boolean isPalindrome (i 展开全文
头像 Sunmerhater
发表于 2020-06-11 16:32:45
题目描述在不使用额外的内存空间的条件下判断一个整数是否是回文提示:负整数可以是回文吗?(比如-1)如果你在考虑将数字转化为字符串的话,请注意一下不能使用额外空间的限制你可以将整数翻转。但是,如果你做过题目“Reverse Integer”,你会知道将整数翻转可能会出现溢出的情况,你怎么处理这个问题? 展开全文
头像 190409杨冬斌
发表于 2021-02-13 21:06:36
import java.util.*; public class Solution { /** * * @param x int整型 * @return bool布尔型 */ public boolean isPalindrome (i 展开全文
头像 LourisXu
发表于 2021-08-01 15:33:42
数学 class Solution { public: /** * * @param x int整型 * @return bool布尔型 */ bool isPalindrome(int x) { // write code 展开全文
头像 牛客362459853号
发表于 2021-11-21 02:18:01
描述 在不使用额外的内存空间的条件下判断一个整数是否是回文。 回文指逆序和正序完全相同。 数据范围:−231≤n≤231−1 进阶: 空间复杂度 O(1),时间复杂度 O(len(n)) 问题分析:根据回文数字 展开全文
头像 青叶摩卡
发表于 2023-05-25 14:34:14
class Solution { public: /** * * @param x int整型 * @return bool布尔型 */ bool isPalindrome(int x) { if (x < 0) { 展开全文
头像 牛客527161027号
发表于 2021-08-28 10:17:20
运行时间 3ms, 内存占用 420 KB 思想很简单,就是创建一个函数用来提取数字指定位的数字。但是因为 C++ 的 math 库编译时需要指定连接。我不知道能不能用 pow 函数,所以就手动实现了一个比较简陋的,中间调试过程主要是 pow 写错了 class Solution { int 展开全文

问题信息

难度:
137条回答 21069浏览

热门推荐

通过挑战的用户

回文数字