Skip to content

Latest commit

 

History

History
executable file
·
66 lines (55 loc) · 1.12 KB

168. Excel Sheet Column Title.md

File metadata and controls

executable file
·
66 lines (55 loc) · 1.12 KB

168. Excel Sheet Column Title

Question

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"

Thinking:

class Solution {
    public String convertToTitle(int n) {
        if(n == 0) return "";
        StringBuilder sb = new StringBuilder();
        String map = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        while(n != 0){
            sb.append(map.charAt((n - 1) % 26));
            n --;
            n /= 26;
        }
        return sb.reverse().toString();
    }
}

二刷

  1. 唯一恶心的就是都是从1开始计数,所以每次计算之前需要-1.
class Solution {
    public String convertToTitle(int n) {
        StringBuilder sb = new StringBuilder();
        while(n != 0){
            n--;
            int remain = n % 26;
            sb.insert(0, (char)(remain + 'A'));
            n /= 26;
        }
        return sb.toString();
    }
}