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; } }
本頁面為一點點累積學習寫程式之路。
許多資訊不是正確、或只是自己看的懂得。
如果不小心點進來誤導了您,還真的不好意思。