LeetCode做题笔记第168题:Excel表列名称

Posted 李公子lm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode做题笔记第168题:Excel表列名称相关的知识,希望对你有一定的参考价值。

题目描述

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

示例 1:
输入:columnNumber = 1
输出:“A”

示例 2:
输入:columnNumber = 28
输出:“AB”

示例 3:
输入:columnNumber = 2147483647
输出:“FXSHRXW”

解题思路

通过分析可知,Excel中的列名称,是符合26进制的,举例,28转成26进制为:12。

因为 1乘26的1次方+2乘26的0次方=28

所以接下来思路就简单了,先把对应的数字转成26进制,然后匹配对应的字母即可。1:A,2:B …26:Z

tips:在ASCII码中,大写字母A-Z对应的十进制数为65-90.

完整代码

 static void Main(string[] args)
 {
       var result = ConvertToTitle(28);
       Console.WriteLine(result);
       Console.ReadKey();
   }
  public static string ConvertToTitle(int columnNumber)
  {
        //把数字转换成26进制,然后匹配对应的字母即可。
        //65-90--->A-Z
        string s = string.Empty;
        while (columnNumber > 0)
        {
            int m = columnNumber % 26;
            if (m == 0)
            {
                m = 26;
            }
            s = (char)(m + 64) + s;
            columnNumber = (columnNumber - m) / 26;
        }
        return s;
    }

在这里插入图片描述

Study hard and make progress every day.

以上是关于LeetCode做题笔记第168题:Excel表列名称的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode第168题—Excel表列名称—Python实现

LeetCode第168题—Excel表列名称—Python实现

LeetCode第168题—Excel表列名称—Python实现

LeetCode 815. 公交路线 / 909. 蛇梯棋(还是bfs)/ 168. Excel表列名称 / 171. Excel表列序号

leetcode 168. Excel表列名称

LeetCode--168--Excel表列名称