栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【每日一题】【map存值】2022年2月25日-NC112 进制转换

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【每日一题】【map存值】2022年2月25日-NC112 进制转换

描述
给定一个十进制数 M ,以及需要转换的进制数 N 。将十进制数 M 转化为 N 进制数。

当 N 大于 10 以后, 应在结果中使用大写字母表示大于 10 的一位,如 'A' 表示此位为 10 , 'B' 表示此位为 11 。

若 M 为负数,应在结果中保留负号。

思路:map记录对应的值,key-value,如10-A

import java.util.*;
 
public class Solution {
    
     
    public String solve (int M, int N) {
        boolean isNegative = false;
        if(M < 0) {
            isNegative = true;
            M = -M;
        }
        char[] map = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
        StringBuilder sb = new StringBuilder();
        int remainder = 0;
        while(M != 0) {
            sb.insert(0, map[M % N]);
            M /= N;
        }
        String res = sb.toString();
        return isNegative ? "-" + res : res;
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号