Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >LeetCode 9. Palindrome Number (回文字数字)

LeetCode 9. Palindrome Number (回文字数字)

作者头像
明明如月学长
发布于 2021-08-27 08:14:01
发布于 2021-08-27 08:14:01
40000
代码可运行
举报
运行总次数:0
代码可运行

题目地址:https://leetcode.com/problems/palindrome-number/description/

题目要求:

Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

Example 1:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Input: 121
Output: true

Example 2:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.

Example 3:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.

Follow up:

Coud you solve it without converting the integer to a string?

算法思路:

第一种思路:把数字转化为字符串,再通过字符来做。

  • 负数不可能是回文字数字,直接返回false
  • 通过left和right两个指针分别从中间往两边走依次比较,如果两个字符不同返回false
  • left容易确定,直接通过除2然后1即可(角标从0开始),如果是偶数right为left+1,否则则right为left+2

题目代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Solution {
    public boolean isPalindrome(int x) {
        if (x < 0) {
            return false;
        }
        String strX = String.valueOf(x);
        int length = strX.length();
        int left = length / 2 - 1;
        int right = length % 2 == 0 ? left+1 : left + 2;
        while (left >= 0){
            if(strX.charAt(left) != strX.charAt(right)){
                return false;
            }
            left--;
            right++;
        }

        return true;
    }
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
11508 / 11508 test cases passed.
Status: Accepted
Runtime: 322 ms

第二种思路:直接通过数字的反转来做

  • 利用一个变量暂存初始的x
  • 负数直接返回false
  • 反转字符串存入result,在此过程中防止超过整数最大值
  • 最后判断反转后的整数是否和原始整数相等
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  public boolean isPalindrome(int x) {
        int y = x;
        if (x < 0) {
            return false;
        }

        int result = 0;
        while(x !=0){
            
             if (result*10 + x%10>Integer.MAX_VALUE){       
                 return false;
             }
            result = result*10 + x%10;
            x = x/10;
        }
        return result == y;
    }

11508 / 11508 test cases passed.

Status: Accepted

Runtime:  268 ms

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/04/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
pandas 处理缺失值[dropna、drop、fillna][通俗易懂]
对于dropna和fillna,dataframe和series都有,在这主要讲datafame的
全栈程序员站长
2022/11/04
2K0
Pandas进阶修炼120题|第一期
在『Pandas进阶修炼120题』系列中,我们将对pandas中常用的操作以习题的形式发布。从读取数据到高级操作全部包含。如果你是新手,可以通过本系列完整学习使用pandas进行数据处理的各种方法,如果你是高手,欢迎留言给出与答案的不同解法。本期先来20题热身吧!
刘早起
2020/04/22
7720
Pandas模块,我觉得掌握这些就够用了!
经常会有一些朋友问我类似的问题,“哎呀,这个数据该怎么处理啊,我希望结果是这样的,麻烦刘老师帮我看看。”、“刘老师,怎么把一列数据拆分出来,并取出最后一个拆分结果呀?”、“刘老师,怎么将Json数据读入到Python中呢?”。在我看来,这些问题都可以借助于Pandas模块完成,因为Pandas属于专门做数据预处理的数据科学包。下面来介绍一下我认为Pandas模块中需要掌握的功能和函数。
1480
2019/08/29
5410
Pandas模块,我觉得掌握这些就够用了!
机器学习基础:缺失值的处理技巧(附Python代码)
在数据分析和建模中,经常会遇到变量值缺失的情况,这是非常常见的。为了保证数据指标的完整性以及可利用性,通常我们会采取特殊的方式对其进行处理。
Python数据科学
2020/08/27
2.5K0
机器学习基础:缺失值的处理技巧(附Python代码)
pandas系列3_缺失值处理和apply用法
缺失值:df中缺失值为nan或者naT(缺失时间),在S型数据中为none或者nan
皮大大
2021/03/02
1.4K0
Kaggle知识点:缺失值处理
在进行数据竞赛中,数据预处理阶段经常需要对数据进行缺失值处理。关于缺失值的处理并没有想象中的那么简单。以下为一些经验分享,基本涵盖了大部分处理方式。
Coggle数据科学
2022/05/05
2.1K0
Kaggle知识点:缺失值处理
机器学习基础:缺失值的处理技巧(附Python代码)
在数据分析和建模中,经常会遇到变量值缺失的情况,这是非常常见的。为了保证数据指标的完整性以及可利用性,通常我们会采取特殊的方式对其进行处理。
Ai学习的老章
2020/08/28
2.5K0
机器学习基础:缺失值的处理技巧(附Python代码)
Pandas缺失值填充5大技巧
.dataframe tbody tr th:only-of-type { vertical-align: middle; } <pre><code>.dataframe tbody tr th { vertical-align: top; } .dataframe thead th { text-align: right; } </code></pre>
皮大大
2023/08/25
1K0
用Pandas处理缺失值
在数据表或 DataFrame 中有很多识别缺失值的方法。一般情况下可以分为两种:一种方法是通过一个覆盖全局的掩码表示缺失值, 另一种方法是用一个标签值(sentinel value) 表示缺失值。在掩码方法中, 掩码可能是一个与原数组维度相同的完整布尔类型数组, 也可能是用一个比特(0 或 1) 表示有缺失值的局部状态。在标签方法中, 标签值可能是具体的数据(例如用 -9999 表示缺失的整数) , 也可能是些极少出现的形式。另外, 标签值还可能是更全局的值, 比如用 NaN(不是一个数) 表示缺失的浮点数。
用户3577892
2020/06/10
3K0
pandas中使用fillna函数填充NaN值「建议收藏」
取值 : {‘pad’, ‘ffill’,‘backfill’, ‘bfill’, None}, default None
全栈程序员站长
2022/09/22
2.7K0
使用Pandas进行数据清理的入门示例
数据清理是数据分析过程中的关键步骤,它涉及识别缺失值、重复行、异常值和不正确的数据类型。获得干净可靠的数据对于准确的分析和建模非常重要。
deephub
2023/08/30
3730
使用Pandas进行数据清理的入门示例
Python数据科学(六)- 资料清理(Ⅰ)1.Pandas1.资料筛选2.侦测遗失值3.补齐遗失值
成功爬取到我们所需要的数据以后,接下来应该做的是对资料进行清理和转换, 很多人遇到这种情况最自然地反应就是“写个脚本”,当然这也算是一个很好的解决方法,但是,python中还有一些第三方库,像Numpy,Pandas等,不仅可以快速简单地清理数据,还可以让非编程的人员轻松地看见和使用你的数据。接下来就让我们一起学习使用Pandas!
Python攻城狮
2018/08/23
2.3K0
Python数据科学(六)- 资料清理(Ⅰ)1.Pandas1.资料筛选2.侦测遗失值3.补齐遗失值
【缺失值处理】拉格朗日插值法—随机森林算法填充—sklearn填充(均值/众数/中位数)
缺失值的处理准备数据1 sklearn填充(1)使用均值进行填补(连续型特征)(2)使用中位数、0进行填补(连续型特征)(3)使用众数进行填补(离散型特征)(4)KNN填补
用户7886150
2020/12/30
3.1K0
手把手教你用pandas处理缺失值
导读:在进行数据分析和建模的过程中,大量的时间花在数据准备上:加载、清理、转换和重新排列。本文将讨论用于缺失值处理的工具。
IT阅读排行榜
2021/02/22
2.9K0
手把手教你用pandas处理缺失值
再见了,Python~
每个操作都包含介绍、语法和案例。这些操作涉及数据导入、数据清理、数据分析、数据可视化和机器学习等方面。
Python编程爱好者
2024/07/22
3770
再见了,Python~
缺失值处理,你真的会了吗?
缺失值处理是一个数据分析工作者永远避不开的话题,如何认识与理解缺失值,运用合适的方式处理缺失值,对模型的结果有很大的影响。本期Python数据分析实战学习中,我们将详细讨论数据缺失值分析与处理等相关的一系列问题。
数据STUDIO
2021/06/24
1.8K0
Pandas缺失数据处理
好多数据集都含缺失数据,缺失数据有多重表现形式 数据库中,缺失数据表示为NULL 在某些编程语言中用NA表示 缺失值也可能是空字符串(’’)或数值 在Pandas中使用NaN表示缺失值;
@小森
2024/03/15
2400
Pandas缺失数据处理
Pandas数据清洗:缺失值处理
在数据分析的过程中,数据清洗是一个至关重要的步骤。而其中,缺失值的处理又是数据清洗中最常见的问题之一。本文将从基础概念出发,逐步深入探讨Pandas库中处理缺失值的方法,包括常见的问题、报错及其解决方案。
Jimaks
2024/12/19
3510
手把手教你如何解决日常工作中的缺失值问题(方法+代码)
再好的模型,如果没有好的数据和特征质量,那训练出来的效果也不会有所提高。数据质量对于数据分析而言是至关重要的,有时候它的意义会在某种程度上会胜过模型算法。
1480
2021/12/06
1K0
手把手教你如何解决日常工作中的缺失值问题(方法+代码)
Pandas部分应掌握的重要知识点
数据集team.xlsx下载地址: 链接:https://pan.quark.cn/s/9e3b2a933510 提取码:7i2y
Francek Chen
2025/01/22
3250
Pandas部分应掌握的重要知识点
推荐阅读
相关推荐
pandas 处理缺失值[dropna、drop、fillna][通俗易懂]
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验