Leetcode 171 Excel Sheet Column Number

来源:互联网 发布:jmeter数据库压力测试 编辑:程序博客网 时间:2024/05/18 01:14

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;      }  }  



0 0
原创粉丝点击