leetcode题目来源:https://leetcode-cn.com/problems/excel-sheet-column-number/
给你一个字符串 columnTitle ,表示 Excel 表格中的列名称。返回 该列名称对应的列序号 。
Given a string columnTitle that represents the column title as appear in an Excel sheet, return its corresponding column number.
例如:
A -> 1
B -> 2
C -> 3
…
Z -> 26
AA -> 27
AB -> 28
…
示例 1:
输入: columnTitle = “A”
输出: 1
示例 2:
输入: columnTitle = “AB”
输出: 28
示例 3:
输入: columnTitle = “ZY”
输出: 701
for 循环的时间比forEach循环需要的时间短
题目分析:将十六进制转换为十进制
var titleToNumber = function (columnTitle) {
var num = 0//用来存储最后获得的总数
var list = columnTitle.split("")//将字符串转换成数组进行遍历
var len = list.length-1//获取列表的长度用来遍历,在循环中不用再重复使用list.length
for (let i=0; i<=len;i++){
num += Math.pow(26, len - i) * (list[i].charCodeAt() + 1 - 65)
}
// list.forEach((item, index) => {
// num += Math.pow(26, len - index) * (item.charCodeAt() + 1 - 65)
// });
return num
};