力扣刷题笔记504

题号: 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);
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值