LeetCode_9_回文数字
回文数(LeetCode 9)
1.题目
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
示例 1:
输入: 121
输出: true
示例 2:
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
示例 3:
输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。
进阶:
你能不将整数转为字符串来解决这个问题吗?
2.分析
整数逆置
3.代码
不用自己写反转
def isPalindrome(self, x: 'int') -> 'bool':
x = str(x)
new_x = x[::-1]
if new_x == x:
return True
return False
自己写反转判断
def isPalindrome(self, x: 'int') -> 'bool':
x = str(x)
return self.func(x)
def func(self, x):
l, r =0, len(x)-1
while l<r:
if x[l] != x[r]:
return False
l += 1
r -= 1
return True
整数逆置
def isPalindrome(self, x: 'int') -> 'bool':
# 如果负数,不是回文数;如果个位数是0(除0这种特殊情况),不是回文数
if x<0 or (x!=0 and x%10==0):
return False
y = x
n = 0
# 逆置 整数
while x:
n = n * 10 + x % 10
x = x//10
return n==y
反转一半数
# 反转一半数
def isPalindrome(self, x: 'int') -> 'bool':
if x<0 or (x!=0 and x%10==0):
return False
right_rev = 0
while x > right_rev:
right_rev = right_rev*10 + x%10
x = x//10
# 奇偶情况都考虑
return x==right_rev or x==right_rev//10
LeetCode_9_回文数字的更多相关文章
- [LeetCode] Palindrome Number 验证回文数字
Determine whether an integer is a palindrome. Do this without extra space. click to show spoilers. S ...
- javascript 实现一个回文数字
写一个方法,让"1234"变成回文数字“1234321”,就是顺着读和倒着读都是一样的:注:不让用reverse()方法: function palindrome(str){ va ...
- UVALive 2889(回文数字)
题意:给定i,输出第i个回文数字. 分析:1,2,3,4,……,9------------------------------------------------------------------- ...
- Java 简单算法--打印回文数字
package cn.magicdu.algorithm; public class CircleNumber { public static void main(String[] args) { f ...
- [蓝桥杯]PREV-21.历届试题_回文数字
问题描述 观察数字:, 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做:回文数字. 本题要求你找到一些5位或6位的十进制数字.满足如下要求: 该数字的各个数位之和等于输入 ...
- 【蓝桥杯】PREV-21 回文数字
题目链接:http://lx.lanqiao.org/problem.page? gpid=T113 历届试题 回文数字 时间限制:1.0s 内存限制:256.0MB 问题描写叙 ...
- LeetCode 9 Palindrome Number(回文数字判断)
Long Time No See ! 题目链接https://leetcode.com/problems/palindrome-number/?tab=Description 首先确定该数字的 ...
- 算法笔记_181:历届试题 回文数字(Java)
目录 1 问题描述 2 解决方案 1 问题描述 问题描述 观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的.这样的数字叫做:回文数字. 本题要求你找 ...
- 《LeetBook》leetcode题解(9):Palindrome Number[E]——回文数字
我现在在做一个叫<leetbook>的开源书项目,把解题思路都同步更新到github上了,需要的同学可以去看看 地址:https://github.com/hk029/leetcode 这 ...
随机推荐
- 暑假集训#2 div1 J 四点直角 J - Space Invader 四点共面+跨立实验
题意:给你四个点,判断能否先依次通过A,B两点,然后再在某个地方只进行一次直角转弯再一次经过C,D两点: #include <iostream> #include <cstdio&g ...
- 【BZOJ3261】最大异或和(可持久化Trie)
题意: 思路:可持久化Trie板子题,支持序列插入和询问 #include<bits/stdc++.h> using namespace std; typedef long long ll ...
- Linux服务器pxe+kickstart部署无人值守安装
一. 使用光盘镜像安装好一台Redhat6.8系统的虚拟机(图形化界面) 二. 部署相关服务程序 1. 安装并配置dhcpd服务程序 a)安装dhcp服务程序 b)对dhcp服务进 ...
- Android_(游戏)打飞机06:后续
(游戏)打飞机01:前言 传送门 (游戏)打飞机02:游戏背景滚动 传送门 (游戏)打飞机03:控制玩家飞机 传送门 (游戏)打飞机04:绘画敌机.添加子弹 传送门 (游戏)打飞机05:处理子弹, ...
- php的while函数
PHP while 循环 PHP Switch PHP For 循环 PHP while 循环在指定条件为 true 时执行代码块. PHP 循环 在您编写代码时,经常需要反复运行同一代码块.我们可以 ...
- wls应用命令部署与卸载
1.查看wls节点运行状态 [root@localhost lib]# jps [root@localhost lib]# ss -tnlp|grep 23705 2.配置wls环境变量 [deplo ...
- 如何将redis加入到Windows 服务中
将redis加入到Windows 服务的方法 原文出自:https://www.cnblogs.com/zoro-zero/p/5761507.html, 本文稍作完善 1.下载zip的Redis,对 ...
- ERROR: Command "python setup.py egg_info" python-nss
[root@localhost ~]# pip install python-nss DEPRECATION: Python 2.7 will reach the end of its life on ...
- 使用zipkin2在SpringCloud2.0环境下追踪服务调用情况
1.目的: 使用zipkin2.0在Spring Cloud 2.0环境下,追踪服务调用情况. 2.所需组件: zipkin2.0,Spring Cloud 2.0,Eureka Server,Eur ...
- 无界面上(linux)生成测试报告(3)
无界面上(linux)生成测试报告 1.待jmx文件运行完成后,键入命令进入到jtl文件下: #cd testresult#bin目录下使用此命令,进入到jtl文件下 #jmeter -g pushG ...