十进制转换N进制

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

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

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

数据范围:  

 

要求:空间复杂度,时间复杂度 

java:

import java.util.*;public class Solution {/*** 进制转换* @param M int整型 给定整数* @param N int整型 转换到的进制* @return string字符串*/public String solve (int M, int N) {// write code hereif(M ==0) return "0";String s = "0123456789ABCDEF";StringBuffer res = new StringBuffer();boolean sign = true;if(M<0){sign = false;M = -M;}while(M != 0){res.append(s.charAt(M%N));M = M/N;}if(sign == false){res.append("-");}return  res.reverse().toString();}
}

注意:

  1. M也可能是负数,注意符号 
  2. 将N进制的表示用s存储,解决ABCDEF的问题


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部