您的位置:首页 > 其它

171 Excel Sheet Column Number

2017-02-19 02:19 176 查看
这道题的反向转化,也做过,那道题稍微复杂一点,因为有个进到while() loop里,n-1的步骤,把数字转化成excel的col,虽然是26进制,但是这个26进制没有0,与正常的的0-25这样的26进制相比,这里有offset=1,是1-26,所以n需要减1,再按照正常的26进制的方法来计算,链接在此:https://leetcode.com/problems/excel-sheet-column-title/?tab=Description

本题代码:

public class Solution {
public int titleToNumber(String s) {
int len=s.length();
if(len==0) return 0;
int result=0;
for(char ch: s.toCharArray()){
result= result*26+ ch-'A'+1;
}
return result;
}
}

逆向题代码:
public class Solution {
public String convertToTitle(int n) {
if(n<=0) return "";
StringBuilder result= new StringBuilder();
while(n>0){
n=n-1;
int remainder= n%26;
result.insert(0, (char)('A'+remainder));
n=n/26;
}
return result.toString();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: