leetCode:reverseInteger 反向整数 【JAVA实现】
2020-12-13 02:58
标签:绝对值 博客 art return 通过 复杂度 for循环 builder table 给定一个 32 位有符号整数,将整数中的数字进行反转,如果超出整数的最大或者最小范围返回0 更多文章查看个人博客 个人博客地址:反向整数 利用StringBuilder的reverse方法,将数字转换成字符反转然后再转换回整数 利用一个循环取余的方法将整数反转,效率要比上边方法好 更多文章查看个人博客 个人博客地址:反向整数 leetCode:reverseInteger 反向整数 【JAVA实现】 标签:绝对值 博客 art return 通过 复杂度 for循环 builder table 原文地址:https://www.cnblogs.com/NiceCui/p/11062574.html反向整数
方法一
public int reverseInteger(int num) {
if (num == 0 || (num -10)) {
return num;
}
// 获得绝对值 去掉正负号
int temp = Math.abs(num);
StringBuilder st = new StringBuilder(String.valueOf(temp));
StringBuilder reverse = st.reverse();
long result = Long.valueOf(reverse.toString());
if (num > 0) {
return result > Integer.MAX_VALUE ? 0 : (int) result;
} else {
return result
名称
结果
时间复杂度
O(n)
空间复杂度
O(n)
方法二
public int reverseInteger(int num) {
if (num == 0 || (num -10)) {
return num;
}
long result = 0;
for (; num != 0; num /= 10) {
result = result * 10 + num % 10;
}
return result > Integer.MAX_VALUE || result
名称
结果
时间复杂度
O(n)
空间复杂度
O(1)
文章标题:leetCode:reverseInteger 反向整数 【JAVA实现】
文章链接:http://soscw.com/essay/26661.html