看到的第一眼想到了用python的reverse,然后想到c#好像也有反转数组的方法,于是:
using System;
public class Solution
{
public int Reverse(int x)
{
try
{
if (x >= 0)
{
string t = x.ToString();
char[] l = t.ToCharArray();
Array.Reverse(l);
int y = int.Parse(l);
return y;
}
else
{
string t = (-x).ToString();
char[] l = t.ToCharArray();
Array.Reverse(l);
int y = int.Parse(l);
y = (-y);
return y;
}
}
catch (OverflowException)
{ return 0; }
catch (FormatException)
{ return 0; }
}
}
利用异常操作处理掉超出范围的数值,FormatException的报错是因为把数组强转成int时溢出报的错。
虽然它的时间和空间都十分的垃圾,但我们还是成功的通过了。