LeetCode168 简单题 Java题解
意在初学者记录学习过程,如有错误欢迎指正。
题目描述
给定一个正整数,返回它在 Excel 表中相对应的列名称。
例如,
1 -> A
2 -> B
3 -> C
…
26 -> Z
27 -> AA
28 -> AB
示例 1:
输入: 1
输出: “A”
示例 2:
输入: 28
输出: “AB”
示例 3:
输入: 701
输出: “ZY”
思路
首先要理解进制转换,参考:https://zhuanlan.zhihu.com/p/75006709
本题中需要注意不是直接的10进制转26进制,个位范围是1-26,而不是一般进制转换的0-25。
代码
public String convertToTitle(int n) {StringBuilder sb = new StringBuilder();while (n > 0) {int c = n % 26;if(c == 0){c = 26;n -= 1;}sb.insert(0, (char) ('A' + c - 1));n /= 26;}return sb.toString();
}
此处的
(char) (‘A’ + c - 1)
是通过对 A 的偏移,强制将整数转为了字符。
比如 c = 3,那么 ‘A’ + c - 1,会把 A 根据 ASCII 码值转为 65,然后计算 65 + c - 1 = 65 + 3 - 1 = 67,然后 (char)67,根据 ASCII 码值就刚好是字符 C。
LeetCode168 简单题 Java题解相关推荐
- LeetCode26 简单题 Java题解
意在初学者记录学习过程,如有错误欢迎指正. 题目描述 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修 ...
- L1-014 简单题 - java
L1-014 简单题 时间限制 400 ms 内存限制 64 MB 题目描述: 这次真的没骗你 -- 这道超级简单的题目没有任何输入. 你只需要在一行中输出事实:This is a simple pr ...
- 算法提高 第五题 java 题解 1096
第五题(15分) 题目描述 实验室的王大神设计的机器人"学霸"掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20 ,add(10, ...
- cccc-gplt 团体程序设计天梯赛JAVA题解
1. 前言 大多是想用java解的,有些题java会超时就换成了c++ Github 天梯赛 2. 目录 编号 标题 题解 分类 L1-001 Hello, World Java 水题 L1-002 ...
- java变量中不属于复合类型的数据类型是_2006新版JAVA题解(JAVA简单数据类型)...
2006新版JAVA题解(JAVA简单数据类型) 2007年1月22日来源:233网校网校课程 在线题库评论 分享到 1.下列哪一个是合法的标识符: A.12class; B.+viod; C.-5; ...
- 一些简单的java编程题(2) ————古典问题(兔子问题)
版权声明: 本文为博主原创文章,未经博主允许不得转载. /* (程序头部注释开始) 版权声明:保留个人权利. 如程序有不当之处,敬请指正.* 文件名称: <一些简单的java编程题(2) --- ...
- leetcode热题HOT100汇总——java题解已完结撒花
文章目录 前言 1. 两数之和 2. 两数相加 3.无重复字符的最长子串 4. 寻找两个正序数组的中位数 5. 最长回文子串 10. 正则表达式匹配 11. 盛最多水的容器 15. 三数之和 17. ...
- 一些简单的java编程题(1) ————求10000以内的完数
版权声明:本文为博主原创文章,未经博主允许不得转载. /* (程序头部注释开始) 版权声明:保留个人权利. 如程序有不当之处,敬请指正.* 文件名称: <一些简单的java编程题(1) ---- ...
- 笔试编程题 拼凑正方形 Java题解 牛牛有4根木棍,长度分别为a,b,c,d。羊羊家提供改变木棍长度的服务,如果牛牛支付一个硬币就可以让一根木棍的长度加一或者减一。牛牛需要用这四根木棍拼凑一个正方
题目描述 牛牛有4根木棍,长度分别为a,b,c,d.羊羊家提供改变木棍长度的服务,如果牛牛支付一个硬币就可以让一根木棍的长度加一或者减一.牛牛需要用这四根木棍拼凑一个正方形出来,牛牛最少需要支付多少硬 ...
最新文章
- php trace 图形,php 方便水印和缩略图的图形类
- Can't use asio::placeholders::error
- 如果修改了表结构的话,可能也需要将调用到表的存储过程、函数等也修改一下,以下语句可以查询到那些对象调用到被修改的表...
- 如何解决高并发,秒杀问题
- C语言 | 递增运算符
- 表达式求值(二叉树方法/C++语言描述)(二)
- vim 插件cscope 使用
- 企业网站 源码 e-mail_临汾网站制作,B2B软件哪家好
- python echo off_生活中的python-随机分配单词输出至word
- 高薪、稀缺人才必备哪些技能?BDTC大会告诉你,附最新议程!
- 敢死队核心:{买了就涨指标}
- thinkphp 模板 in
- Latex 合并pdf文档
- 例2.9 找x - 九度教程第17题(查找)
- 主键和外键(MySQL)
- 提升用户体验的40个Firefox 4扩展
- MATLAB视频转图片保存
- 一元云购短信-配置修改
- 变上限积分求导的原理
- 系统镜像ISO、GHO、WIM、ESD的区别