LeetCode Top Interview Questions 171. Excel Sheet Column Number (Java版; Easy)
题目描述
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
...
Example 1:
Input: "A"
Output: 1
Example 2:
Input: "AB"
Output: 28
Example 3:
Input: "ZY"
Output: 701
classSolution{publicinttitleToNumber(String s){int res =0;for(int i=0; i<s.length(); i++){//'@'的ascii是64, 'A'的ascii是65, 使用'@'的小优势是不用再+1了
res = res *26+(s.charAt(i)-'@');}return res;}}
第一次做; 26进制数字转10进制; 核心: res是乘26, 别无脑地写成10了
/*
相当于26进制数字
和面试官讨论s为null或者""时的返回值, 不妨返回0
*/classSolution{publicinttitleToNumber(String s){if(s==null || s.trim().equals(""))return0;int res =0;char cur;for(int i=0; i<s.length(); i++){
cur = s.charAt(i);
res = res *26+(cur -'@');}return res;}}