【CSDN 每日一练 ★☆☆】【数学】Excel表列名称

【CSDN 每日一练 ★☆☆】【数学】Excel表列名称
数学 进制转换

题目

给你一个整数columnNumber ,返回它在 Excel 表中相对应的列名称。

例如:

A -> 1

B -> 2

C -> 3

...

Z -> 26

AA -> 27

AB -> 28

...

示例

示例 1:

输入:columnNumber = 1

输出:"A"

示例 2:

输入:columnNumber = 28

输出:"AB"

示例 3:

输入:columnNumber = 701

输出:"ZY"

示例 4:

输入:columnNumber = 2147483647

输出:"FXSHRXW"

提示
  • 1 <= columnNumber <= 231 - 1
思路
  • 26进制
实现
java 复制代码
public String convertToTitle(int n) {
    if (n <= 0) {
        return "";
    }
    StringBuilder sb = new StringBuilder();
    while (n > 0) {
        // 模26,范围在0~25之间
        n--;
        // 转成对应字符
        sb.append((char) (n % 26 + 'A'));
        n = n / 26;
    }
    // 逆序输出,其实用递归实现,不需要逆序
    return sb.reverse().toString();
}
相关推荐
m0_7088309612 小时前
C++中的享元模式实战
开发语言·c++·算法
naruto_lnq12 小时前
分布式计算C++库
开发语言·c++·算法
m0_7066532313 小时前
模板编译期排序算法
开发语言·c++·算法
历程里程碑13 小时前
Linxu14 进程一
linux·c语言·开发语言·数据结构·c++·笔记·算法
木井巳13 小时前
【递归算法】验证二叉搜索树
java·算法·leetcode·深度优先·剪枝
m0_5613596713 小时前
嵌入式C++加密库
开发语言·c++·算法
近津薪荼13 小时前
优选算法——双指针专题7(单调性)
c++·学习·算法
j4455661113 小时前
C++中的职责链模式实战
开发语言·c++·算法
m0_6860416113 小时前
实时数据流处理
开发语言·c++·算法
波波侠813 小时前
代码随想录算法训练营打卡第31天|56. 合并区间、738.单调递增的数字
算法