Java [Leetcode 171]Excel Sheet Column Number

题目描述:

A -> 1
    B -> 2
    C -> 3
    ...
    Z -> 26
    AA -> 27
    AB -> 28 

解题思路:

循环读取数字,从左向右读取,每次该位字符减去A加上一即为该为数字代表的数值,然后每次循环前将之前的结果乘以26.表示该表示为26进制。

代码如下:

public class Solution {
    public int titleToNumber(String s) {
    	int i = 0;
    	int result = 0;
    	int length;
    	if(s == null || (length = s.length()) == 0)
    		return 0;
    	while(i < length){
    		result *= 26;
    		result += s.charAt(i) - 'A' + 1;
    		i++;
    	}
    	return result;
    }
}

  

原文地址:https://www.cnblogs.com/zihaowang/p/5074017.html