- 1、题目描述:
-3、 设计思想:
-4、视频讲解链接B站视频讲解
-5、代码:
c++版本:
class Solution {
public:
/**
* 进制转换
* @param M int整型 给定整数
* @param N int整型 转换到的进制
* @return string字符串
*/
string solve(int M, int N) {
// write code here
if(M == 0) return "0";//如果M=0就直接返回
bool flag = false;//记录是不是负数
if(M < 0){
//如果是负数flag=true,M 取相反数
flag = true;
M = -M;
}
string res = "";//返回最终的结果
string jz = "0123456789ABCDEF";//对应进制的某一位
while(M != 0){//就对应转换为N进制的逆序样子
res += jz[M % N];
M /= N;
}
reverse(res.begin(),res.end());//逆序一下才是对应的N进制
if(flag) res.insert(0,"-");//如果是负数就在头位置插入一个-号
return res;
}
};
Java版本:
import java.util.*;
public class Solution {
/**
* 进制转换
* @param M int整型 给定整数
* @param N int整型 转换到的进制
* @return string字符串
*/
public String solve (int M, int N) {
// write code here
if(M == 0) return "0";//如果M=0就直接返回
boolean flag = false;//记录是不是负数
if(M < 0){
//如果是负数flag=true,M 取相反数
flag = true;
M = -M;
}
String jz ="0123456789ABCDEF";//对应进制的某一位
StringBuffer res = new StringBuffer();//返回最终的结果
while(M != 0){//就对应转换为N进制的逆序样子
res.append(jz.charAt(M % N));
M /= N;
}
res.reverse();//逆序一下才是对应的N进制
if(flag) res.insert(0,"-");//如果是负数就在头位置插入一个-号
return res.toString();
}
}Python版本:
#
# 进制转换
# @param M int整型 给定整数
# @param N int整型 转换到的进制
# @return string字符串
#
class Solution:
def solve(self , M , N ):
# write code here
if M == 0: return "0" #如果M=0就直接返回
flag = False #记录是不是负数
if M < 0 :
#如果是负数flag=true,M 取相反数
flag = True
M = -M
jz = "0123456789ABCDEF" #对应进制的某一位
res = ""#返回最终的结果
while M != 0:
#就对应转换为N进制的逆序样子
res += jz[M % N]
M //= N
if flag: #如果是负数就加一个-号
res += "-"
return res[::-1] #直接逆序返回
JavaScript:
/**
* 进制转换
* @param M int整型 给定整数
* @param N int整型 转换到的进制
* @return string字符串
*/
function solve( M , N ) {
// write code here
if(M == 0) return "0";//如果M=0就直接返回
let flag = false;//记录是不是负数
if(M < 0){
//如果是负数flag=true,M 取相反数
flag = true;
M = -M;
}
let jz ="0123456789ABCDEF";//对应进制的某一位
let res = [];//返回最终的结果
while(M != 0){//就对应转换为N进制的逆序样子
res.push(jz[M % N]);
M = parseInt(M/N);
}
if(flag) res.push("-");//如果是负数就在头位置插入一个-号
return res.reverse().join("");//逆序一下才是对应的N进制
}
module.exports = {
solve : solve
};
京公网安备 11010502036488号