十进制转换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();}
}
注意:
- M也可能是负数,注意符号
- 将N进制的表示用s存储,解决ABCDEF的问题
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
