LeetCode 504.七进制数(简单)
发布时间:2023-09-08 06:09:30 274 相关标签:
题目描述:
给定一个整数 num
,将其转化为 7 进制,并以字符串形式输出。
示例 1:
示例 2:
提示:
题目分析:
这道题是进制转换类型的题,一般都使用除法和取模计算来解决,注意一些细节就好,就像这道题返回值并不是整型,而是字符串型,还有有时要考虑是否越界。
题解一:
执行用时: 9 ms
内存消耗: 36.7 MB
class Solution {
public String convertToBase7(int num) {
// 为 0 的情况直接返回 "0"
if (num == 0) {
return "0";
}
// 标记该数是否为负数
boolean isNegative = num < 0;
// 如果该数为负数,先化为正数计算
if (isNegative) {
num = -num;
}
// 结果字符串
String result = "";
// 循环取余取模求值
while (num != 0) {
// a 为除法后取整的值
int a = num / 7;
// b 为余数
int b = num % 7;
// 逆序拼接余数即可得结果
result = b + result;
// 除法后取整的值重新赋给 num 进行下一次运算
num = a;
}
// 如果为负数在前面添个符号
return isNegative? "-" + result : result;
}
}
题解二:
执行用时: 0 ms
内存消耗: 35.9 MB
class Solution {
public String convertToBase7(int num) {
// 直接调用 Integer.toString(int i, int radix)
return Integer.toString(num, 7);
}
}
题目来源:力扣(LeetCode)
文章来源: https://blog.51cto.com/u_15891283/5886607
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报