7. Reverse Integer 反向输出整数 easy 9. Palindrome Number 判断是否是水仙花数 easy
Given a 32-bit signed integer, reverse digits of an integer. 将32位整数反向输出。
Note:
Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231, 231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overflows.
思路:
原来的数除以10取余数。得到的数乘以10加下一个数。
pop=x%10;
x=x/10;
rev=rev*10+pop; //在这个过程中可能会产生overflow. 所以在每一次执行这条语句之前判断是否会产生overflow。
产生overflow的条件是:
1. 原来的 rev *10>231 − 1, 或 rev *10=231 − 1 但pop>7. (231 − 1=2147483647)
2. 原来的 rev *10<-231, 或 rev *10=231 − 1 但pop<-8. (-231=-2147483648)
以下是solution:
class Solution {
public int reverse(int x) {
int rev=0;
while(x!=0){
int pop=x %10;
x=x/10;
if(rev>Integer.MAX_VALUE/10||(rev==Integer.MAX_VALUE&&pop>7)) return 0;
if(rev<Integer.MIN_VALUE/10||(rev==Integer.MIN_VALUE&&pop<-8)) return 0;
rev=rev*10+pop;
}
return rev;
}
}
第9题的思路跟第7题很相似。
Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.
Coud you solve it without converting the integer to a string?
这道题可以将数值反过来在去和原来的比,看是否数值相等。只需在第7题的基础上加一句比较就行了。
class Solution {
public boolean isPalindrome(int x) {
int rev=0;
int input=x;
if(x<0) return false;
while(x!=0){
int pop = x%10;
x=x/10;
if(rev>Integer.MAX_VALUE/10||(rev==Integer.MAX_VALUE&&pop>7)) return false;
if(rev<Integer.MIN_VALUE/10||(rev==Integer.MIN_VALUE&&pop<-8)) return false;
rev=rev*10+pop;
}
if(input==rev) return true;
return false;
}
}
7. Reverse Integer 反向输出整数 easy 9. Palindrome Number 判断是否是水仙花数 easy的更多相关文章
- 【Leetcode】【Easy】Palindrome Number
Determine whether an integer is a palindrome. Do this without extra space. 判断一个整数是不是回文整数(例12321).不能使 ...
- C# 写 LeetCode easy #9 Palindrome Number
9.Palindrome Number Determine whether an integer is a palindrome. An integer is a palindrome when it ...
- leetcode:Reverse Integer(一个整数反序输出)
Question:Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 ...
- 7. Reverse Integer(翻转整数)
Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...
- 9 Palindrome Number(判断是否为回文数Easy)
题目意思:判断是否为回文数,不许使用额外空间 ps:一直不理解额外空间的意思,int能用吗 思路:1.比较头尾 2.翻转,越界问题需考虑 class Solution { public: bool i ...
- C# 写 LeetCode easy #7 Reverse Integer
7.Reverse Integer Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 ...
- LeetCode之Easy篇 ——(7)Reverse Integer
7.Reverse Integer Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: Out ...
- Leetcode 7 反转整数Reverse Integer
给定一个 32 位有符号整数,将整数中的数字进行反转. 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: ...
- [LintCode] Reverse Integer 翻转整数
Reverse digits of an integer. Returns 0 when the reversed integer overflows (signed 32-bit integer). ...
随机推荐
- django 模型中 class Meta 内 各种属性的用法
Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.下面对此作一总结: abstract 这个属性是定义当前的模型类是不是一个抽象类.所谓抽象类是不会相应数据库表的 ...
- C语言中宏定义与C++中的内联函数
一,宏定义:在预处理的时候把宏定义的内容替换到代码中,正常编译. 1,无参数宏定义和有参数宏定义 (1)宏定义不能加分号,比如:#define PI 3.24;错的,#define PI 3.24 ...
- [Bootstrap-Table] 中的事件用例
[Bootstrap-Table] 中的事件 -------------------------------------------------- <div class="alert ...
- Java_异常处理(Exception)
异常:Exception try{ //捕获异常 }catch{ //处理异常 } 异常处理机制: 1.在try块中,如果捕获了异常,那么剩余的代码都不会执行,会直接跳到catch中, 2.在try之 ...
- [java实现]常见算法之字符串操作
一.字符串反转 把一个句子中的打次进行反转,比如“how are you” ,变为 “you are how” // 字符串反转 public class StringTest { // 字符反转的方 ...
- 分布式系统的Raft算法学习笔记
摘取自: http://mp.weixin.qq.com/s?__biz=MzIyMTQ1NDE0MQ==&mid=2247483979&idx=1&sn=12864382e ...
- day5:python学习之集合
0. 集合的作用及特点 集合具有去重和关系测试两大作用,它具有无序的特点. list1 = [1,2,3,4,5,7,6,8,6,4] list1 = set(list1) print(list1) ...
- abp 依赖注入声明
public class SchedulerManager : ISingletonDependency { private ILogger logger; public SchedulerManag ...
- 【算法笔记】A1039 Course List for Student
https://pintia.cn/problem-sets/994805342720868352/problems/994805447855292416 题意: 有N个学生,K节课.给出选择每门课的 ...
- 认识CSS3新增选择器和样式
前端之HTML5,CSS3(二) CSS3新增选择器和样式 CSS3新增选择器 结构伪类选择器 :first-child:选取父元素中的第一个子元素的指定选择器 :last-child:选取父元素中的 ...