题号: 504.七进制数
简介:
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
示例 1:
输入: num = 100
输出: "202"
示例 2:
输入: num = -7
输出: "-10"
题解:
进制转化问题 将一个十进制进制数转化为七进制数
思想 正常的十进制数转化为n进制数只需要用原
数除以n 取余数反转即可如
100 / 7 = 14 余 2
14 / 7 = 2 余 0
2 / 7 =0 余 2
反转得202
负数去绝对值求绝对值的进制数最后再加上符号即可
可采用递归的思想 递归出口为num<7 时直接返回num即可
递归内容为 num / 7 + num%7
代码实现:
class Solution {
public String convertToBase7(int num) {
if (num < 0) {
return "-" + convertToBase7(-num);
}
if(num < 7) {
return Integer.toString(num);
}
return convertToBase7(num / 7) + Integer.toString(num % 7);
}
}