LeetCode Algorithm 9. 回文数
9. 回文数
Ideas
算法:迭代
数据结构:一个变量就OK
思路:
- 首先负数肯定都不是回文数,所以遇到负数可以直接return false;
- 针对最后一位是0的情况,因为0不能作为开头,所以只要最后一位数字是0并且这个数字本身不是0,也可以直接return false;
- 突然间想到之前做的LeetCode Algorithm 7. 整数反转,根据回文数的定义,把一个整数反转之后那么它应该还等于它本身;
- 直接翻转的话有可能会导致int类型整数溢出,所以需要优化一下:因为回文数是对称的,所以从中间位置往后的翻转操作都是多余的,只需要后一半数就可以了;
- 针对奇数个位数的回文数,可以直接把翻转后的数字的最后一位去掉。
Code
C++
class Solution {public:bool isPalindrome(int x) {if (x < 0 || (!(x % 10) && x)) return false;int rev = 0;while (rev < x) {rev = rev * 10 + x % 10;x /= 10;}return rev == x || rev / 10 == x; }
};
Python
class Solution:def isPalindrome(self, x):if x<0:return Falseif x<10:return Trueif x % 10 == 0:return Falsex_str = str(x)if x_str[::-1] == x_str:return Truereturn False
LeetCode Algorithm 9. 回文数相关推荐
- LeetCode(9.回文数)JAVA
LeetCode(9.回文数) 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输 ...
- java回文数算法for_【Java】【每日算法/刷穿 LeetCode】9. 回文数(简单)
首页 专栏 java 文章详情 0 [每日算法/刷穿 LeetCode]9. 回文数(简单) 宫水三叶发布于 今天 15:30 题目描述 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从 ...
- LeetCode 09:回文数(Java实现)
LeetCode 09:回文数(Java实现) 题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1:输入: 121 输出: true 示例 2:输 ...
- LeetCode实战:回文数
题目英文 Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same ...
- LeetCode(JavaScript实现)——回文数
文章目录 1.题目 2.题解 2.1.将整数转换为字符串解法 实现方法一 实现方法二: 1.题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: ...
- leetcode系列--9.回文数
leetcode系列–第9题.回文数 给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数.例如,1 ...
- Python 算法 入门到精通 - LeetCode - 3 :回文数
本系列适合跟我一样新入门的同学,我会从最基础的方法一步一步优化,所有代码都可以直接复制运行,希望有所帮助.如果喜欢可以订阅本系列(基于python3) 先看题目: 给你一个整数 x ,如果 x 是一个 ...
- 【Leetcode | easy】回文数
题目 判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: ...
- LeetCode Golang 9.回文数
9. 回文数 第一种办法 :itoa 转换为字符串进行处理: package mainimport ("strconv""fmt" )//判断一个整数是否是回文 ...
最新文章
- 支付宝 php rsa算法,:PHP支付宝接口RSA验证
- 6_分布式训练框架Horovod使用(20190111)
- 比特币可视化工具_比特币再破1.2万大关 你还要做打工人吗?
- 【机器学习】关于机器学习模型可解释(XAI),再分享一招!
- Persist Security Info 参数的作用
- 第七章:XAML vs. code(3)
- [html] 说说你对移动优先布局的理解
- 福州联通与市政府携手 共筑新型智慧城市
- 前端特效demo | 值得收藏的6个 HTML5 Canvas 实用案例
- Elasticsearch核心知识图谱
- Oracle 获取月初和月末
- python手机自动化框架_python自动化框架(一)
- 计算机flash听课记录范文,听课记录范文
- SQLite解决插入大量数据速度慢的问题
- LeetCode·718.最长重复子数组·动态规划
- c语言ascii码字符串转16进制,ASCII转16进制C语言
- MySQL日期字符串转换成NULL值的异常处理
- 全球KYC服务商ADVANCE.AI 活体检测产品通过ISO国际安全认证 产品能力再上一新台阶
- 为啥要使用代理IP?
- app前端图形验证码(全部代码)
热门文章
- Web.sitemap网站导航
- 杂项-QRCode:ZXing
- 命名空间“Microsoft.Office”中不存在类型或命名空间名称“Interop”(是否缺少程序集引用?...
- 有1,2,3,4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少
- 转:在 C# 中使用 P/Invoke 调用 Mupdf 函数库显示 PDF 文档
- python3 面向对象详解_Python3面向对象
- python控制台输出到文件_Python print 立即打印内容到重定向的文件
- 10-7 B2-1查找订单数最多的员工信息 (20 分)
- python交互模式切换_Python 交互式窗口 (REPL) - Visual Studio | Microsoft Docs
- Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含……。编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间