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
};
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐