LeetCode算法题-Easy-Math(168、171)

技巧是:利用char 'Z'和'A'对应ASCII的值

168.Excel Sheet Column Title

题目:Given a positive integer, return its corresponding column title as appear in an Excel sheet.
For example:
1 -> A
2 -> B
3 -> C
...
26 -> Z
27 -> AA
28 -> AB
...
Example 1:
Input: 1
Output: "A"
Example 2:
Input: 28
Output: "AB"
Example 3:
Input: 701
Output: "ZY"

class Solution {
    public String convertToTitle(int n) {
        
        int letterLen = (int)'Z' - (int)'A'+1;
        int a = (int)'A';
       
        StringBuffer sb = new StringBuffer();
     
        while(n > 0 ){
          
            n--;
            char c =(char)(a + n%letterLen );
            sb.append(c);
            n /=letterLen;  
          
        }
        
       return sb.reverse().toString();
    }
}

171. Excel Sheet Column Number

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

class Solution {
    public int titleToNumber(String s) {
        
        char[] c = s.toCharArray(); 
        int result = 0;
        for(int i = 0 ; i < c.length;i++){
            
           result = result*26 + c[i] - 'A'+1 ;
            
        }
        
        return result;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • **2014真题Directions:Read the following text. Choose the be...
    又是夜半惊坐起阅读 10,966评论 0 23
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 9,878评论 0 13
  • 写这篇文章的时候我已经十八岁多四个月了,按虚岁算就是二十岁多五个月。十八和二十都是标志性的好年纪,于是身边...
    九月_septebmer阅读 223评论 0 1
  • 每个人都要学会控制自己,因为如果你不会控制自己的话,你会出特别大的错误,那些不应该做的事情,你偏偏去做了,...
    逐梦之新阅读 648评论 0 2
  • 来自二次元直男癌。 对“爱情”的一丢丢不成熟的看法。 轻喷。 临近年关,又看到一些找女朋友的贴。我想说“两句”。 ...
    a0db911d0cbb阅读 366评论 0 0

友情链接更多精彩内容