LeetCode面试系列 第6天:No.9 - 回文数

简介: LeetCode面试系列 第6天:No.9 - 回文数

上一篇面试题中,我们使用了 埃拉托斯特尼筛法 去统计给定范围内质数的个数(LeetCode No.204),还是有点烧脑的。今天我们来分析一道相对轻松的字符串面试题吧,恰好大家从Python 100天中学到的字符串知识可以派上用场。



image.png


今天要给大家分析的面试题是 LeetCode 上第 9 号问题,

LeetCode - 9. 回文数


https://leetcode-cn.com/problems/palindrome-number/

题目描述


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


示例 1:


输入: 121输出: true

示例 2:


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

示例 3:


输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。
  • 题目难度:简单
  • 通过次数:182.9K
  • 提交次数:322.9K
  • 贡献者:LeetCode
  • 相关话题
  • 相似题目

解题思路:


  1. 先将原数转为字符串 str0
  2. 反转步骤1中的字符串 str0 得到字符串 reversedStr,判断其是否与反转前相等。而 Python 中字符串反转有如下两种常用方法:
  • 使用切片功能,即reversedStr = str0[::-1]
  • 使用 reversed 函数,reversedStr = ''.join(list(reversed(str0)))
  1. 解决特殊情况
  • 输入的数为负的,前面有-,反转后显然不相等

AC的代码为:


class Solution:    def isPalindrome(self, x: int) -> bool:        if x < 0:            return False        else:            str0 = str(x)            reversedStr = str0[::-1]            if reversedStr == str0:                return True        return False

执行用时: 64 ms, 在所有 python3 提交中击败了98.39%的用户.



image.png


示例代码: https://github.com/JustDoPython/leetcode-python/tree/master/leetcode-009

LeetCode面试系列:


第1天:Leetcode 89 - 格雷码

第2天:No.136 - 只出现一次的数

第3天:No.67 - 二进制数求和

第4天:No.202 - 快乐数

第5天:No.204 - 统计质数


目录
相关文章
|
1月前
|
算法
LeetCode回文数(暴力解,求更好的思路)
这篇博客讨论了如何判断一个整数是否为回文数,提供了暴力解法的代码,并寻求更优的算法建议。
41 1
LeetCode回文数(暴力解,求更好的思路)
|
3月前
|
开发者 索引 Python
这些年背过的面试题——LeetCode
本文是技术人面试系列LeetCode篇,一文带你详细了解,欢迎收藏!
|
3月前
|
算法
LeetCode第9题回文数
该文章介绍了 LeetCode 第 9 题回文数的解法,通过分析回文数的特征,只需反转一半数字进行比较即可,时间复杂度可降至 O(n/2),并总结了该题与整数反转有关,需根据回文数特征来解决。
LeetCode第9题回文数
|
4月前
|
Python
155. 最小栈 力扣 python 空间换时间 o(1) 腾讯面试题
155. 最小栈 力扣 python 空间换时间 o(1) 腾讯面试题
|
4月前
|
存储 算法 索引
1124. 表现良好的最长时间段 (python) 前缀和 分类讨论 最大长度 力扣 面试题
1124. 表现良好的最长时间段 (python) 前缀和 分类讨论 最大长度 力扣 面试题
|
4月前
|
存储 算法
经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
|
5月前
|
存储 算法 数据挖掘
深入解析力扣168题:Excel表列名称(进制转换法详解及模拟面试问答)
深入解析力扣168题:Excel表列名称(进制转换法详解及模拟面试问答)
|
5月前
|
存储 算法 数据挖掘
深入解析力扣166题:分数到小数(模拟长除法与字符串操作详解及模拟面试问答)
深入解析力扣166题:分数到小数(模拟长除法与字符串操作详解及模拟面试问答)
|
5月前
|
SQL 算法 大数据
深入解析力扣176题:第二高的薪水(子查询与LIMIT详解及模拟面试问答)
深入解析力扣176题:第二高的薪水(子查询与LIMIT详解及模拟面试问答)
|
5月前
|
算法 数据挖掘 大数据
深入解析力扣172题:阶乘后的零(计算因子5的方法详解及模拟面试问答)
深入解析力扣172题:阶乘后的零(计算因子5的方法详解及模拟面试问答)