0
点赞
收藏
分享

微信扫一扫

十进制和26进制转换算法

王传学 2022-03-30 阅读 47


背景

在Excel中,列的名称是这样一个递增序列:A、B、C、…、Z、AA、AB、AC、…、AZ、BA、BB、BC、…、BZ、CA、…、ZZ、AAA、AAB…。

我们需要将上述列名序列和以下自然数序列相互转换:1、2、3、…。

算法实现

function convert10To26(num){
var code='';
var reg = /^\\d+$/g;
if(!reg.test(num)){
return code;
}
while (num>0){
m = num % 26
if (m==0){
m = 26;
}
code = String.fromCharCode(64 + parseInt(m)) + code;
num = ( num - m ) /26;
}
return code;
}


举报

相关推荐

0 条评论