原题链接:#7 Reverse Integer
要求:
按位反转输入的数字
例1: 输入 x = 123, 返回 321
例2: 输入 x = -123, 返回 -321
难度:简单
分析:
对于一般情况,首先保存输入数字的符号,然后每次取输入的末位(x%10)作为输出的高位(result = result*10 + x%10)即可。但须考虑边界情况,即输入大于Integer.MAX_VALUE或小于Integer.MIN_VALUE的情况。根据用例的结果,这时应输出0。我们用x<0&&-x<0来判断输入是否属于这种情况。
解决方案:
Java - 312ms
public int reverse(int x){ if(x<0&&-x<0){ return 0; } boolean isNegative = false; if(x<0){ isNegative = true; x = -x; } int result = x%10; x/=10; while(x>0){ result = result*10 + x%10; x/=10; if(x>0&&result>Integer.MAX_VALUE/10){ return 0; } } return isNegative?-result:result; }
相关推荐
然后通过用循环来解:假设第一个for循环是一个数组的循环,而后它的内嵌循环是也是这个数组,只是下标从0变成了1,这样,在第一次循环时,第1个元素会与其他所有元素
面试题 02.06. 回文链表标签:栈、递归、链表、双指针难度:简单题目大意给定一个链表的头节点 head。然后再使用两个指针,一个指向数组开始位置,一个指向数
解题思路如果 n ,则 n 必然不是丑数,直接返回 False。对 n 分别进行 2、3、5 的整除操作,直到 n 被除完,如果 n 最终为 1,则 n
字符串可能的余数LeetCode-7-Reverse-An-Integer 我对 LeetCode #7 的解决方案 我处理这个问题的目的是优化时间复杂度而不是空间复杂度。 因此,我避免了通用方法链接解决方案,在这种解决方案中,输入被转换为字符...
解题思路序列化:通过深度优先搜索的方式,递归遍历节点,以 root.val、len(root.children)、root.children 的顺序生成序列化结
如果在当前组合中增加一个 (,则 symbol += 1,如果增加一个 ),则 symbol -= 1。如果最终生成 2 * n 的括号组合,并且 symbol
解法一:先通过哈希表统计S串中不同种石头的个数,然后遍历J串统计石头的个数int numJewelsInStones(string J, string S) {
剑指 Offer 15. 二进制中1的个数方法一:位运算* @param {number} n - a positive integervar hammingW
① 对于给定的n个权值{W,w2,.. wn}, 构造出具有n棵叉树的森林F={ T, T,, .... T},其中每棵.1叉树T均只有一个带有权值w的根结点
解法一:先统计奇数所在的下标,再通过滑动窗口的方式计算目标数组数量int numberOfSubarrays(vector<int>& nums, int k)
解题思路思路和LeetCode-python 503.下一个更大元素 II一致,只是这里求的是下标的距离,而不是数值倒序搜索,用到栈,栈里存储索引情况1:若栈为
大佬的leetcode刷题笔记(c++版本)
1.AMD(require.js),require 的第一个参数表示依赖的模块的路径,第二个参数表示此模块的内容 1.CMD 推崇依赖就近,AMD 推崇依赖前置
第321题Reversed_Integer Java中的LeetCode逆整数问题解决方案 问题 - 给定一个有符号的 32 位整数 x,返回 x 其数字颠倒。 如果反转 x 导致值超出有符号的 32 位整数范围 [-231, 231 - 1],则返回 0。 假设环境不...
leetcode leetcode-cli-plugins leetcode-cli 的第 3 方插件。 什么是 如何使用 如何使用 插件 名称 描述 增强的命令 按公司或标签过滤问题 list 不要在同一台计算机上使 Chrome 的会话过期 login 不要在同一台...
按摩师一、LeetCode题解瞧一瞧~博健的LeetCode题解:Gitbook版本传送门博健的LeetCode题解:CSDN传送门有趣的CSS:Gitbook
0867. 转置矩阵标签:数组难度:简单题目大意给定一个二维数组 matrix。返回 matrix 的转置矩阵。根据转置的规则对 transposed 的每个元
例如:如果未来 7 天股票的价格是 [100, 80, 60, 70, 60, 75, 85],那么股票跨度将是 [1, 1, 1, 2, 1, 4, 6]。如
970. 强整数对数运算function powerfulIntegers(x: number, y: number, bound: number): numb
push 操作:将新加入的元素压入 pushQueue 队列中,并且将之前保存在 popQueue 队列中的元素从队头开始依次压入 pushQueue 中,此时