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 ... AAA -> 703
把excel的列表编号转换成数字
我的初次写法有点复杂 主要是有些细节想多了
来看一个简单一点的写法 基本思路是一样的public class Solution { public int titleToNumber(String s) { String sr=new StringBuffer(s).reverse().toString();//这个地方其实没必要进行reverse 采用进位的方式就好 char string[] = sr.toCharArray(); int result = 0; int number= 0; int plus=1; for(int i= 0;i<s.length();i++){ number = string[i]-64; System.out.println(i); for(int j=0;j<i;j++){ plus*=26; } result += number*plus; plus=1; } return result; } }
public class Solution { public int titleToNumber(String s) { int n=s.length(); int result=0; for(int i=0;i<n;i++) { int num=s.charAt(i)-'A'+1; //傻啊如我 还查了ascii表 直接拿个字符一减差值就出来了啊 result=result*26+num; //这个地方 result相当于高位的部分进行26进制的进位啊 } return result; } }