0.声明
该题目来源于LeetCode
如有侵权,立马删除。
解法不唯一,如有新解法可一同讨论。
1.题目
0007整数反转
给你一个32位有符号整数x,返回将x中的数字部分反转后的结果。
如果反转后整数超过32位的有符号整数的范围[−2^31, 2^31 − 1],就返回0。
假设环境不允许存储64位整数(有符号或无符号)。
示例 1:
输入:x = 123
输出:321
示例 2:
输入:x = -123
输出:-321
示例 3:
输入:x = 120
输出:21
示例 4:
输入:x = 0
输出:0
提示:
-2^31 <= x <= 2^31 - 1
2.代码
namespace LeetCode_0007整数反转
{
class Program
{
static void Main(string[] args)
{
int x = 123;
LeetCode_Reverse lr = new LeetCode_Reverse();
int i_Result = lr.Reverse(x);
Console.WriteLine(i_Result);
Console.ReadKey();
}
}
class LeetCode_Reverse
{
public int Reverse(int x)
{
int i_Rev = 0;
while (x != 0)
{
if (i_Rev < int.MinValue / 10 || i_Rev > int.MaxValue / 10)//判断是否超出限界
return 0;
int i_Digit = x % 10;
x /= 10;
i_Rev = i_Rev * 10 + i_Digit;
}
return i_Rev;
}
}
}