Leetcode_171_Excel Sheet Column Number
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42290079
Given a column title as appear in an Excel sheet, return its corresponding column number.
For example:
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
思路:
(1)题意为给出Excel中对应列的字符求出该字符对应的整数。
(2)这道简单题考查的是“二十六进制”的问题(非真正二十六进制)。不难发现,每当超过26时,和十进制类似会发生变化,这里不对其解释。
(3)考虑到简单快捷,直接将26个字符对应的整数值存入一个Map中。需要说明的是算法中用到了Math类的power()方法,该方法是幂次方函数。
例如对于字符“ABC”来说,求解过程为:
count = 0 + 1 * Math.power(26, 2) = 676;
count = 676 + 2 * Math.power(26, 1) = 728;
count = 728 + 3 * Math.power(26, 0) = 731;
(4)希望本文对你有所帮助。
算法代码实现如下:
public static int titleToNumber(String s) {
Map<String, Integer> all = new HashMap<String, Integer>();
all.put("A", 1);
all.put("B", 2);
all.put("C", 3);
all.put("D", 4);
all.put("E", 5);
all.put("F", 6);
all.put("G", 7);
all.put("H", 8);
all.put("I", 9);
all.put("J", 10);
all.put("K", 11);
all.put("L", 12);
all.put("M", 13);
all.put("N", 14);
all.put("O", 15);
all.put("P", 16);
all.put("Q", 17);
all.put("R", 18);
all.put("S", 19);
all.put("T", 20);
all.put("U", 21);
all.put("V", 22);
all.put("W", 23);
all.put("X", 24);
all.put("Y", 25);
all.put("Z", 26);
if (s == null)
return -1;
int len = s.length();
int sum = 0;
int power = len - 1;
for (int i = 0; i < len; i++) {
int curr = all.get(String.valueOf(s.charAt(i)));
sum += curr * Math.pow(all.size(), power);
power--;
}
return sum;
}
Leetcode_171_Excel Sheet Column Number的更多相关文章
- 【leetcode】Excel Sheet Column Title & Excel Sheet Column Number
题目描述: Excel Sheet Column Title Given a positive integer, return its corresponding column title as ap ...
- Excel Sheet Column Title & Excel Sheet Column Number
Excel Sheet Column Title Given a positive integer, return its corresponding column title as appear i ...
- 【leetcode】Excel Sheet Column Number
Excel Sheet Column Number Related to question Excel Sheet Column Title Given a column title as appea ...
- 【LeetCode】168 & 171- Excel Sheet Column Title & Excel Sheet Column Number
168 - Excel Sheet Column Title Given a positive integer, return its corresponding column title as ap ...
- 171. Excel Sheet Column Number(C++)
171. Excel Sheet Column Number Related to question Excel Sheet Column Title Given a column title as ...
- LeetCode Javascript实现 100. Same Tree 171. Excel Sheet Column Number
100. Same Tree /** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; ...
- 2016.5.18——Excel Sheet Column Number
Excel Sheet Column Number 本题收获: 1.对于字符串中字母转为ASIIC码:string s ;res = s[i]-'A'; 这个res就是数字s[i]-'A'是对ASII ...
- leetcode 168. Excel Sheet Column Title 171 Excel Sheet Column Number
题目 //像10进制一样进行 转换 只是要从0开始记录 class Solution { public: string convertToTitle(int n) { char a; string ...
- Excel Sheet Column Title&&Excel Sheet Column Number
Excel Sheet Column Title Given a positive integer, return its corresponding column title as appear i ...
随机推荐
- Vue结合slot插槽分发父组件内容实现高度复用、更加灵活的dialog组件
之前写过一篇关于vue实现dialog会话框组件的文章(http://www.cnblogs.com/fozero/p/8546883.html)[http://www.cnblogs.com/foz ...
- 前端技术之_CSS详解第二天
前端技术之_CSS详解第二天 1.css基础选择器 html负责结构,css负责样式,js负责行为. css写在head标签里面,容器style标签. 先写选择器,然后写大括号,大括号里面是样式. & ...
- 安卓图片Bitmap一些旋转处理
Bitmap convert(Bitmap a, int width, int height) { int w = a.getWidth(); int h = a.getHeight(); Bitma ...
- 手动创建第一个OC程序
手动创建第一个OC程序 创建一个文件夹,文件夹内创建一个a.m的OC源文件,并编辑 之前说过,OC是完全兼容C语言的,那么我们先写个下面的程序尝试一下 #include<stdio.h> ...
- Matlab to OpenCV Mat
convert Matlab matrix to OpenCV Mat. Support CV_32FC3 only currently. The Code int matlab2opencv(cv: ...
- Python 3 函数自由变量的大坑
Python中函数是一个对象, 和整数,字符串等对象有很多相似之处,例如可以作为其他函数的参数或返回对象, Python中的函数还可以携带自由变量, 两者无疑极大增进了Python的表达力. 但是Py ...
- EJB_开发消息驱动bean
开发消息驱动bean Java消息服务(Java MessageService) Java 消息服务(Java Message Service,简称 JMS)是用于访问企业消息系统的开发商中立的API ...
- Java学习之运算符使用注意的问题
运算符使用注意的问题 运算符(掌握) (1)算术运算符 A:+,-,*,/,%,++,-- B:+的用法 a:加法 b:正号 c:字符串连接符 C:/和%的区别 数据做除法操作的时候,/取得是商,%取 ...
- 为何不能在viewDidLoad方法中显示其他视图
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 你可以使得当视图控制器(view controller)显示自 ...
- ActiveMQ安装配置及实例
本文可作为吴水成老师,dubbo课程第21节的学习笔记. ActiveMQ的介绍及功能 参考百度 ActiveMQ的下载 https://activemq.apache.org/activemq-51 ...