LeetCode刷題之171Python Excel表列序號
題目:
給定一個Excel表格中的列名稱,返回其相應的列序號。
例如,
A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ...
示例 1:
輸入: "A" 輸出: 1
示例 2:
輸入: "AB" 輸出: 28
示例 3:
輸入: "ZY" 輸出: 701
參考解答:
與第168題是反過來的。
class Solution(object): def titleToNumber(self, s): """ :type s: str :rtype: int """ result = 0 for letter in s: result = result * 26 + ord(letter) - ord('A') + 1#轉換之後把大寫字母對應的數字轉化為小寫字母。 return result
ord() 函式是 chr() 函式(對於8位的ASCII字串)或 unichr() 函式(對於Unicode物件)的配對函式,它以一個字元(長度為1的字串)作為引數,返回對應的 ASCII 數值,或者 Unicode 數值,如果所給的 Unicode 字元超出了你的 Python 定義範圍,則會引發一個 TypeError 的異常。
相關推薦
LeetCode刷題之171Python Excel表列序號
題目: 給定一個Excel表格中的列名稱,返回其相應的列序號。 例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28
C#LeetCode刷題之#168-Excel表列名稱(Excel Sheet Column Title)
問題 給定一個正整數,返回它在 Excel 表中相對應的列名稱。 例如, 1 -> A 2 -> B 3 -> C ... 26 -&g
LeetCode演算法題171:Excel表列序號解析
給定一個Excel表格中的列名稱,返回其相應的列序號。 例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ... 示例1
演算法題5:Excel表列序號(python3實現)
給定一個Excel表格中的列名稱,返回其相應的列序號。 例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ... 示例 1:
leetcode題庫——Excel表列序號
題目描述: 給定一個Excel表格中的列名稱,返回其相應的列序號。 例如, A -> 1 B -> 2 C -> 3 &nb
#leetcode刷題之路25- k個一組翻轉鏈表
而是 The 總數 while循環 main 繼續 nullptr 之前 node 給出一個鏈表,每 k 個節點一組進行翻轉,並返回翻轉後的鏈表。k 是一個正整數,它的值小於或等於鏈表的長度。如果節點總數不是 k 的整數倍,那麽將最後剩余節點保持原有順序。 示例 :給定這
leetcode 刷題之路 68 Gas Station
rom 說明 之路 bsp margin tom otto mono lee There are N gas stations along a circular route, where the amount of gas at station i is gas[i]
leetcode刷題之 字符串反轉
solution arr reverse eof HA rev code toc val 請編寫一個函數,其功能是將輸入的字符串反轉過來。 示例: 輸入:s = "hello" 返回:"olleh" 註:這裏之所以不使用倒敘遍歷strs,是因為字符串拼接的效率很低,str+
leetcode 算法 Excel表列序號 python實現
技術 += rev let class excel表 sum span turn 這道題給我感覺就像一個26進制數一樣。 A 就是1 B是2 。。。。 Z 是26 如果AB 兩位,那就是 1 * 26 + 2 就是A 的數值*26 + B的數值 如果是MNP 三
C#LeetCode刷題之#374-猜數字大小(Guess Number Higher or Lower)
問題 我們正在玩一個猜數字遊戲。 遊戲規則如下: 我從 1 到 n 選擇一個數字。 你需要猜我選擇了哪個數字。 每次你猜錯了,我會告訴你這個數字是大了還是小了。 你呼叫一個預先定義好的介面 guess(int num),它會返回 3 個可能的結果(-1,1 或 0): -1 :
C#LeetCode刷題之#704-二分查詢(Binary Search)
問題 給定一個 n 個元素有序的(升序)整型陣列 nums 和一個目標值 target ,寫一個函式搜尋 nums 中的 target,如果目標值存在返回下標,否則返回 -1。 輸入: nums = [-1,0,3,5,9,12], target = 9 輸出:
C#LeetCode刷題之#278-第一個錯誤的版本(First Bad Version)
問題 你是產品經理,目前正在帶領一個團隊開發新的產品。不幸的是,你的產品的最新版本沒有通過質量檢測。由於每個版本都是基於之前的版本開發的,所以錯誤的版本之後的所有版本都是錯的。 假設你有 n 個版本 [1, 2, ..., n],你想找出導致之後所有版本出錯的第一個錯誤的版本。 你可
C#LeetCode刷題之#824-山羊拉丁文(Goat Latin)
問題 給定一個由空格分割單詞的句子 S。每個單詞只包含大寫或小寫字母。 我們要將句子轉換為 “Goat Latin”(一種類似於 豬拉丁文 - Pig Latin 的虛構語言)。 山羊拉丁文的規則如下: 如果單詞以母音開頭(a, e, i, o, u),在單詞後新增"ma"。 例
C#LeetCode刷題之#819-最常見的單詞(Most Common Word)
問題 給定一個段落 (paragraph) 和一個禁用單詞列表 (banned)。返回出現次數最多,同時不在禁用列表中的單詞。題目保證至少有一個詞不在禁用列表中,而且答案唯一。 禁用列表中的單詞用小寫字母表示,不含標點符號。段落中的單詞不區分大小寫。答案都是小寫字母。 輸入:
C#LeetCode刷題之#788-旋轉數字(Rotated Digits)
問題 我們稱一個數 X 為好數, 如果它的每位數字逐個地被旋轉 180 度後,我們仍可以得到一個有效的,且和 X 不同的數。要求每位數字都要被旋轉。 如果一個數的每位數字被旋轉以後仍然還是一個數字, 則這個數是有效的。0, 1, 和 8 被旋轉後仍然是它們自己;2 和 5 可以互相旋轉成
C#LeetCode刷題之#709-轉換成小寫字母(To Lower Case)
問題 實現函式 ToLowerCase(),該函式接收一個字串引數 str,並將該字串中的大寫字母轉換成小寫字母,之後返回新的字串。 輸入: "Hello" 輸出: "hello" 輸入: "here" 輸出: "here" 輸入:
C#LeetCode刷題之#686-重複疊加字串匹配(Repeated String Match)
問題 給定兩個字串 A 和 B, 尋找重複疊加字串A的最小次數,使得字串B成為疊加後的字串A的子串,如果不存在則返回 -1。 舉個例子,A = "abcd",B = "cdabcdab"。 答案為 3, 因為 A 重複疊加三遍後為 “abcdabcdabcd”,此時 B 是其子串;A
C#LeetCode刷題之#680-驗證迴文字串 Ⅱ(Valid Palindrome II)
問題 給定一個非空字串 s,最多刪除一個字元。判斷是否能成為迴文字串。 輸入: "aba" 輸出: True 輸入: "abca" 輸出: True 解釋: 你可以刪除c字元。 注意:字串只包含從 a-z 的小寫字母。字串的最大長度是
C#LeetCode刷題之#657-機器人能否返回原點(Robot Return to Origin)
問題 在二維平面上,有一個機器人從原點 (0, 0) 開始。給出它的移動順序,判斷這個機器人在完成移動後是否在 (0, 0) 處結束。 移動順序由字串表示。字元 move[i] 表示其第 i 次移動。機器人的有效動作有 R(右),L(左),U(上)和 D(下)。如果機器人在完成所有動作後
C#LeetCode刷題之#557-反轉字串中的單詞 III(Reverse Words in a String III)
問題 給定一個字串,你需要反轉字串中每個單詞的字元順序,同時仍保留空格和單詞的初始順序。 輸入: "Let's take LeetCode contest" 輸出: "s'teL ekat edoCteeL tsetnoc" 注意:在字串中,每個單詞由