leetcode-168-Excel Sheet Column Title

本文介绍了解决LeetCode上编号为168的问题——Excel表列标题的方法。该问题实质上是一道关于进制转换的题目,需要将给定的整数转换成26进制表示,并考虑到英文字母的特殊性进行调整。

问题

题目:[leetcode-168]

思路

刚上来已知每反应过来,做题的时候需要注意一点。在分析问题的时候,如果不能直接解决。需要考虑转化问题,即问题的本质是什么。这个题目,本质就是进制转换。想到这问题就解决了。

注意:转换的时候需要对mod修正。

代码

class Solution {
public:
    string convertToTitle(int n) {
        std::string ans;

        while( n )
        {
            int mod = (n-1)%26;
            n = (n-1)/26; // 这个地方n的意义并没有修正,因为还是从0开始

            std::cout << "mod = " << mod << std::endl;

            std::string tmp(1, 'A' + mod);
            ans = tmp + ans;
        }

        return ans;
    }
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值