• leetcode 166 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"
    
    package com.example.lettcode.math;
    
    /**
     * @Class ConvertToTitle
     * @Description 166 Excel表列名称
     * @Author
     * @Date 2021/6/29
     **/
    public class ConvertToTitle {
        public static String convertToTitle(int columnNumber) {
            if (columnNumber <= 0 || columnNumber > Integer.MAX_VALUE) return "";
    
            StringBuilder titleStr = new StringBuilder("");
            while (columnNumber != 0) {
                int tmp = columnNumber % 26;
                if (tmp == 0) {
                    // 减1操作是为了把进制转换的0-25变成1-26
                    columnNumber--;
                    tmp = 26;
                }
                titleStr.append((char) ('A' + tmp - 1));
                columnNumber /= 26;
            }
            return titleStr.reverse().toString();
        }
    }
    
    // 测试用例
    public static void main(String[] args) {
        int columnNumber = 1;
        String titleStr = ConvertToTitle.convertToTitle(columnNumber);
        System.out.println("ConvertToTitle demo01 result : " + titleStr);
    
        columnNumber = 26;
        titleStr = ConvertToTitle.convertToTitle(columnNumber);
        System.out.println("ConvertToTitle demo02 result : " + titleStr);
    
        columnNumber = 52;
        titleStr = ConvertToTitle.convertToTitle(columnNumber);
        System.out.println("ConvertToTitle demo03 result : " + titleStr);
    
        columnNumber = 28;
        titleStr = ConvertToTitle.convertToTitle(columnNumber);
        System.out.println("ConvertToTitle demo04 result : " + titleStr);
    
        columnNumber = 701;
        titleStr = ConvertToTitle.convertToTitle(columnNumber);
        System.out.println("ConvertToTitle demo05 result : " + titleStr);
    }
    
  • 相关阅读:
    iOS学习,需要懂的一些基础
    学习RAC小记-适合给新手看的RAC用法总结(转)
    UITableView进阶,cell刷新,界面返回 保持所选cell
    冒泡排序
    ArrayList 实现随机点名
    ArrayList的使用
    java中一维数组的定义和遍历
    java 中二维数组的定义和遍历
    Java 引用数据类型
    java 中自定义类的概述
  • 原文地址:https://www.cnblogs.com/fyusac/p/14950015.html
Copyright © 2020-2023  润新知