题目
给定一个整数 num
,将其转化为 7 进制,并以字符串形式输出。
示例 1:
输入: num = 100
输出: "202"
示例 2:
输入: num = -7
输出: "-10"
提示:
-107 <= num <= 107
思路
- 判断正负,为负结果加上负号
- 为0直接返回
- 不断除7取余,加在字符串首部
代码
class Solution:
def convertToBase7(self, num: int) -> str:
if num == 0:
return "0"
res = ""
x = abs(num)
while x > 0:
res = str(x%7) + res
x //= 7
return res if num>0 else "-"+res
复杂度
- 时间复杂度: O ( log n ) O(\log n) O(logn)
- 空间复杂度: O ( log n ) O(\log n) O(logn)