week16

力扣刷题

Excel 表列序号

int titleToNumber(char * columnTitle){

    int i = 0, result = 0;//声明变量 i 表示字符串下标,result 表示最终计算的结果,默认为 0

    while (columnTitle[i] != '\0') {//循环处理字符串中的每一个字符,直到字符串遍历完毕

        result = result * 26 + (columnTitle[i] - 'A' + 1);//对于每一个字符 columnTitle[i],将其对应的数字值乘以 26 的相应指数后累加结果中

        i++;//更新下标 i,以便遍历下一个字符

    }

    return result;//最终返回计算结果 result,即为给定列名称对应的列序号

}

26 进制的字符串转换成十进制的数字。对于一个字符(假设其为 c)来说,它实际上代表的是数字 c - ‘A’ + 1,比如 A 对应的数字就是 1B 对应的数字就是 2。因此,将字符串中的每个字符转换成相应的数字后再计算即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值