LeetCode刷题-007反转整数

给定一个 32 位有符号整数,将整数中的数字进行反转。
示例 1:
输入 : 123
输出 : 321
示例 2:
输入 : ‐123
输出 : ‐321
示例 3:
输入 : 120
输出 : 21
注意 :
假设我们的环境只能存储 32 位有符号整数,其数值范围是 [?2 31 , 2 31 ? 1]。根据这个假设,如果反转后的整数溢出,则返回 0。

 1 class Solution {
 2 public:
 3     int reverse(int x) {
 4     const int int_max=0x7fffffff;
 5     const int int_min=0x80000000;
 6     long long anwser=0;
 7     while(x!=0)
 8     {
 9         anwser=anwser*10+(x%10);
10         x/=10;
11     }
12     if(anwser<int_min || anwser>int_max)
13     {
14         anwser=0;
15     }
16     return anwser;
17     }
18 };

原文地址:https://www.cnblogs.com/nkqlhqc/p/9085349.html

时间: 2024-10-19 10:31:28

LeetCode刷题-007反转整数的相关文章

leetcode刷题日记——反转整数

给定一个 32 位有符号整数,将整数中的数字进行反转. 这里考虑,交换时,需要注意位数不同,需要乘上对应的位数,代码如下: int reverse(int x) { int result = 0; while(x != 0) { int tmp = result * 10 + x % 10; //转换的中间值 x = x / 10; //每循环一次,x位数减少一位 if(tmp / 10 != result) //验证数据是否正确 { result = 0; break; } result =

【leetcode刷题笔记】Sum Root to Leaf Numbers

Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number. An example is the root-to-leaf path 1->2->3 which represents the number 123. Find the total sum of all root-to-leaf numbers. For example, 1 / 2 3 T

【leetcode刷题笔记】Multiply Strings

Given two numbers represented as strings, return multiplication of the numbers as a string. Note: The numbers can be arbitrarily large and are non-negative. 题解:就是让实现一个大整数乘法. 假设两个数num1和num2的长度分别是len1和len2,那么最后得到的答案,在最高位有进位的时候,就是len1+len2位,否则是len1+len2

【leetcode刷题笔记】String to Integer (atoi)

Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cases. Notes: It is intended for this problem to be spe

【leetcode刷题笔记】Linked List Cycle II

Given a linked list, return the node where the cycle begins. If there is no cycle, return null. Follow up:Can you solve it without using extra space? 判断一个链表是否有环. 题解: 设置两个指针p1和p2: p1每次走一步,p2每次走两步,如果在这个过程中,p2为空,则没有环:否则两个指针必然相遇,则有环: 接下来找环的起点,将p1挪动到链表起始,

【leetcode刷题笔记】Reverse Nodes in k-Group

Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If the number of nodes is not a multiple of k then left-out nodes in the end should remain as it is. You may not alter the values in the nodes, only nod

【leetcode刷题笔记】Reverse Linked List II

Reverse a linked list from position m to n. Do it in-place and in one-pass. For example:Given 1->2->3->4->5->NULL, m = 2 and n = 4, return 1->4->3->2->5->NULL. Note:Given m, n satisfy the following condition:1 ≤ m ≤ n ≤ lengt

leetcode 刷题之路 84 Single Number II

Given an array of integers, every element appears three times except for one. Find that single one. 给定一个包含n个整数的数组,除了一个数出现一次外所有的整数均出现三次,找出这个只出现一次的整数. 思路,根据数组构成的特点可知,数组中所有数的某一位上1的个数总和为3*n或者3*n+1. 当只出现一次的整数该位为0时,总和为3*n,当只出现一次的整数该位为1时,总和为3*n+1. 因此我们可以计算数

LeetCode刷题总结-链表

LeetCode刷题总结-链表 一.链表     链表分为单向链表.单向循环链表和双向链表,一下以单向链表为例实现单向链表的节点实现和单链表的基本操作. 单向链表 单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域)和一个链接域.这个链接指向链表中的下一个节点,而最后一个节点的链接域则指向一个空值. 表元素域elem用来存放具体的数据: 链接域next用来存放下一个节点的位置(python中的标识): 变量p指向链表的头节点(首节点)的位置,从p出发能找到表