LeetCode简单题之Excel 表中某个范围内的单元格
生活随笔
收集整理的這篇文章主要介紹了
LeetCode简单题之Excel 表中某个范围内的单元格
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
Excel 表中的一個單元格 (r, c) 會以字符串 “” 的形式進行表示,其中:
即單元格的列號 c 。用英文字母表中的 字母 標識。 例如,第 1 列用 'A' 表示,第 2 列用 'B' 表示,第 3 列用 'C' 表示,以此類推。 即單元格的行號 r 。第 r 行就用 整數 r 標識。 給你一個格式為 ":" 的字符串 s ,其中 表示 c1 列, 表示 r1 行, 表示 c2 列, 表示 r2 行,并滿足 r1 <= r2 且 c1 <= c2 。 找出所有滿足 r1 <= x <= r2 且 c1 <= y <= c2 的單元格,并以列表形式返回。單元格應該按前面描述的格式用 字符串 表示,并以 非遞減 順序排列(先按列排,再按行排)。 示例 1:輸入:s = “K1:L2”
輸出:[“K1”,“K2”,“L1”,“L2”]
解釋:
上圖顯示了列表中應該出現的單元格。
紅色箭頭指示單元格的出現順序。
示例 2:
輸入:s = “A1:F1”
輸出:[“A1”,“B1”,“C1”,“D1”,“E1”,“F1”]
解釋:
上圖顯示了列表中應該出現的單元格。
紅色箭頭指示單元格的出現順序。
提示:
s.length == 5
‘A’ <= s[0] <= s[3] <= ‘Z’
‘1’ <= s[1] <= s[4] <= ‘9’
s 由大寫英文字母、數字、和 ‘:’ 組成
來源:力扣(LeetCode)
解題思路
??題目比較簡單,而且提示還對輸入做了限制,這就表示題目的輸入固定位置是固定類型的數據,這樣就比較方便統一處理數據。這個題只需要在兩個方向上遍歷即可,優先行遍歷,即數字優先然后再來看字母。
class Solution:def cellsInRange(self, s: str) -> List[str]:S=s[0]start,end=int(s[1]),int(s[-1])temp=[]while S!=s[3]:for i in range(start,end+1):temp.append(S+str(i))S=chr(ord(S)+1)for i in range(start,end+1):temp.append(S+str(i))return temp
總結
以上是生活随笔為你收集整理的LeetCode简单题之Excel 表中某个范围内的单元格的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode中等题之两两交换链表中的
- 下一篇: LeetCode简单题之三维形体的表面积