LeetCode #171. Excel Sheet Column Number
題目:
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
解題概念:
#1.將字母轉成數字,透過ASCII表(A=65、B=66)。
#2.設立一數組來儲存轉換值(需求數字與ASCII的差)、A=64則減去64變成1並儲存。
#3.將數組中的值拿來計算求答案。
a=33。
aa=(33*26)+33。(891)。
aaa=(33*26+33)*26+33。(23199)。
aaaa=((33*26+33)*26+33)*26+33。(603207)
每多一層則 (*26) 及加現在層的值 (a=33、b=34)
public class Solution
{
public int TitleToNumber(string s)
{
char[] Number = s.ToCharArray();
int[] intNumber = new int[Number.Length];
int numberLength = Number.Length;
int answer = 0;
int carry = 26;
for (int i = 0;i < numberLength; i++)
{
intNumber[i] = (Number[i]-64);
}
for (int j = 0; j < numberLength; j++)
{
answer = answer * carry + intNumber[j];
}
return answer;
}
}
本頁面為一點點累積學習寫程式之路。
許多資訊不是正確、或只是自己看的懂得。
如果不小心點進來誤導了您,還真的不好意思。