题目

Related to question Excel Sheet Column Title

Given a column title as appear in an Excel sheet, return its corresponding column number.

For example:

A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
...
AAA -> 703
AAB -> 704

Credits:

Special thanks to @ts for adding this problem and creating all test cases.

分析

用过Execl的都知道,上述字母是其列名称,数字代表第几列,本题是求给定一个A~Z组成的字符串序列,求出其在Execl表中的列数。

由以上给出的示例可以看出规律,其中A~Z代表数字1~26,那么字符串怎么求呢?

比如(由低到高逐位计算):

A=1∗260=1

A=2∗260=2

...

AA=1∗260+1∗261=27

AB=2∗260+1∗261=28

...

AAA=1∗260+1∗261+1∗262=703

AAB=2∗260+1∗261+1∗262=704

AC代码

class Solution {
public:
int titleToNumber(string s) {
int len = strlen(s.c_str());
if (len == 0)
return 0; int count = 0 , p = 0;
for (int i = len-1; i >= 0; i--)
{
count = count + Num(s[i]) * pow(26, p);
p++;
}
return count;
} int Num(char c)
{
switch (c)
{
case 'A':
return 1; break;
case 'B':
return 2; break;
case 'C':
return 3; break;
case 'D':
return 4; break;
case 'E':
return 5; break;
case 'F':
return 6; break;
case 'G':
return 7; break;
case 'H':
return 8; break;
case 'I':
return 9; break;
case 'J':
return 10; break;
case 'K':
return 11; break;
case 'L':
return 12; break;
case 'M':
return 13; break;
case 'N':
return 14; break;
case 'O':
return 15; break;
case 'P':
return 16; break;
case 'Q':
return 17; break;
case 'R':
return 18; break;
case 'S':
return 19; break;
case 'T':
return 20; break;
case 'U':
return 21; break;
case 'V':
return 22; break;
case 'W':
return 23; break;
case 'X':
return 24; break;
case 'Y':
return 25; break;
case 'Z':
return 26; break;
default:
return 0; break;
}
}
};

GitHub测试程序源码

LeetCode(171) Excel Sheet Column Number的更多相关文章

  1. LeetCode(168) Excel Sheet Column Title

    题目 Given a positive integer, return its corresponding column title as appear in an Excel sheet. For ...

  2. Leetcode Excel Sheet Column Number (C++) && Excel Sheet Column Title ( Python)

    Given a column title as appear in an Excel sheet, return its corresponding column number. For exampl ...

  3. 171. Excel Sheet Column Number(C++)

    171. Excel Sheet Column Number Related to question Excel Sheet Column Title Given a column title as ...

  4. LeetCode Javascript实现 100. Same Tree 171. Excel Sheet Column Number

    100. Same Tree /** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; ...

  5. LeetCode 171. Excel表列序号(Excel Sheet Column Number) 22

    171. Excel表列序号 171. Excel Sheet Column Number 题目描述 给定一个 Excel 表格中的列名称,返回其相应的列序号. 每日一算法2019/5/25Day 2 ...

  6. leetcode 168. Excel Sheet Column Title 171 Excel Sheet Column Number

    题目 //像10进制一样进行 转换   只是要从0开始记录 class Solution { public: string convertToTitle(int n) { char a; string ...

  7. LeetCode Excel Sheet Column Number 表列数

    题意:天啊!我竟然看不懂题意,还去翻别人的代码才懂!给定一个字符串,求该字符串二十六进制的总值. 思路:'A'~'Z'就是1到26,"AA"=26+1=27,"BA&qu ...

  8. 【LeetCode】168 & 171- Excel Sheet Column Title & Excel Sheet Column Number

    168 - Excel Sheet Column Title Given a positive integer, return its corresponding column title as ap ...

  9. 【leetcode】Excel Sheet Column Title & Excel Sheet Column Number

    题目描述: Excel Sheet Column Title Given a positive integer, return its corresponding column title as ap ...

随机推荐

  1. C++ typedef typename 作用

    C++ typedef typename 作用 C++的一些语法让人看着费解,其中就有: typedef typename std::vector<T>::size_type size_t ...

  2. 伪元素选择器:before 以及 :after

    E:after.E:before 在旧版本里是伪类,在新版本里是伪元素,新版本下E:after.E:before会被自动识别为E::after.E::before,按伪元素来对待,这样做的目的是用来做 ...

  3. python实现希尔排序

    与插入排序的思想一致,插入排序是一个,希尔排序是多个插入排序! # @File: shell_sort import random def insert_sort_gap(li, d): for i ...

  4. UVA - 1349 D - Optimal Bus Route Design

    4. D - Optimal Bus Route Design 题意:给出n(n<=100)个点的带权有向图,找出若干个有向圈,每个点恰好属于一个有向圈.要求权和尽量小. 注意即使(u,v)和( ...

  5. .net core跨域设置

    services.AddCors(options => options.AddPolicy("AllowSameDomain", builder => builder. ...

  6. PHP pack和unpack函数详解

    pack 压缩资料到位字符串之中. 语法: string pack(string format, mixed [args]...); 返回值: 字符串 函数种类: 资料处理 内容说明 本函数用来将资料 ...

  7. Android提供的对话框

    1.普通对话框: 给出提示信息,有yes.no两个按钮. AlertDialog dialog=new AlertDialog.Builder(this) //this代表当前Activity对象,表 ...

  8. ImageView控件

    ImageView   显示图片 常用属性: src    要显示的图片 foreground 前景图 backgrund 背景图 alpha 透明度 clickable 是否可以点击 onClick ...

  9. Jenkins+Ant+Jmeter搭建轻量级接口自动化

    软件准备 本文所用软件版本如下: Jenkins2.176.1 Tomcat9.0.21 Ant1.9.14 Jmeter5.1.1 我已经把相应的软件上传到我的网盘中,下载地址如下: 下载链接:ht ...

  10. 【程小白】Java基本特性

    一.StringBuffer.StringBuilder的区别 StringBuffer是线程安全的,StringBuilder是线程不安全的.所以以后在单线程中,如果涉及大量字符串操作,还是用Str ...