题目

168. Excel表列名称【简单】

题解

刚开始以为是26进制数,后来发现也不太一样,26进制数是[0,25],而此处的规则是[1,26],所以AB不是26∗0+1∗126*0+1*126∗0+1∗1,而是26∗1+1∗126*1+1*126∗1+1∗1,因此想办法把这个规则转成26进制数,再解决
思路同十进制转二进制:先模再除倒输出

错误做法:

class Solution {public String convertToTitle(int columnNumber) {int n=columnNumber;StringBuffer a=new StringBuffer();//记录模26余数,转字母后倒输出即要求结果while(n>0){a.append((char)(n%26+64));n=n/26;}return a.reverse().toString();}
}

错误原因:26%26=026\%26=026%26=0,本来应该输出Z,结果输出@A

正解:- -n是题解的关键,其目的是将n从[1,26]转换到[0,25],使它真真正正成为26进制数

class Solution {public String convertToTitle(int columnNumber) {int n=columnNumber;StringBuffer a=new StringBuffer();//记录模26余数,转字母后倒输出即要求结果while(n>0){a.append((char)((--n)%26+'A'));//重点是模除之前n先减一n=n/26;}return a.reverse().toString();}
}

【LeetCode】Day3-Excel表列名称相关推荐

  1. leetcode 168. Excel表列名称

    题目 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称. 例如: A -> 1 B -> 2 C -> 3 - Z -> 26 AA -> ...

  2. leetcode 168. Excel表列名称(10进制转26进制)

    题目 思路 10进制转26进制 经过分析,我们不难发现,这是一个26进制和十进制相互转换的问题.序列A-Z依次对应序列1-26.进制转换的基本办法就是"取余法",换算规则如下: A ...

  3. LeetCode 171. Excel表列序号(26进制转10进制)

    1. 题目 给定一个Excel表格中的列名称,返回其相应的列序号. 例如,A -> 1B -> 2C -> 3...Z -> 26AA -> 27AB -> 28 ...

  4. ​LeetCode刷题实战168:Excel表列名称

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  5. 力扣刷题笔记--168. Excel表列名称

    题目描述: 简单题 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称. 例如: A -> 1 B -> 2 C -> 3 ... Z -> 2 ...

  6. LeetCode简单题之Excel表列名称

    题目 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称. 例如: A -> 1 B -> 2 C -> 3 - Z -> 26 AA -> ...

  7. Excel表列名称(4)

    Excel表列名称 题目描述 思路分析及函数部分代码 题目描述 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称. 例如: A -> 1 B -> 2 C ...

  8. 每日算法-Excel表列名称

    题目 给定一个正整数,返回它在 Excel 表中相对应的列名称. 例如, 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -&g ...

  9. leetcode算法168.Excel表列名称

  10. Leetcode 171. Excel表列序号 解题思路及C++实现

    解题思路: 26进制转10进制.没啥可说的了. class Solution { public:int get_26(int n){int res = 1;while(n > 0){res *= ...

最新文章

  1. 网友提问:SAPGUI里做好的事物码,能直接用在ABAP Webdynpro里么
  2. 【原创】(十二)Linux内存管理之vmap与vmalloc
  3. Xcode新建View Controller Scene并实现界面间跳转的方法
  4. 百度翻译API 错误码: 52003,错误信息: UNAUTHORIZED USER
  5. 计算机字体库被删了,win7系统下word字体库不想要的字体如何删除
  6. UA OPTI512R 傅立叶光学导论14 卷积定理
  7. 小米笔记本12.5java_小米12.5笔记本系统
  8. 小米手机怎么按键测试软件,小米手机开机后出现工厂方式自动测试等等是什么意思...
  9. Win10 微软拼音添加小鹤双拼
  10. JavaScript-幸运转盘-抽奖
  11. PID 详解 (附伪代码
  12. 公务员计算机职称有哪些,2017职称考试有哪些
  13. win10去掉快捷方式小箭头_快捷方式小箭头很烦人 一招教你取消
  14. DSP28335的eCAP模块
  15. 蓝牙遥控小车2.0版发布啦
  16. Matlab 旋转坐标轴标记文本
  17. 计算机数字媒体毕业论文,求数字媒体艺术毕业论文题目
  18. AD中板内挖空的方法
  19. 【RocketMQ】 官方运维管理命令mqadmin使用手册(讲解+实操)
  20. TOLT(you only look twice): Rapid multi-scale object detection in satellite imagery(中文翻译simrdwn)

热门文章

  1. geo差异表达分析_GEO2R差异表达分析软件
  2. 如何在cisco官网上下载Cisco packet tracer模拟器
  3. 中芯国际任命高永岗为董事长 周子学辞任执行董事职务
  4. 保存Windows11聚焦图片教程
  5. mac无线连接打印机进行打印和扫描
  6. Cocos Creator + TiledMap制作瓦片地图部分经验总结
  7. jquery源码_详细中文注释
  8. 头像框DIY制作小程序源码王者吃鸡等气泡头像框在线生成源码
  9. matlab 行 读取文件 跳过_matlab中textscan跳行使用
  10. java ipv6工具,支持通过IPv6地址和子网大小 计算开始结束地址