Python程式:查詢首字母相同的單詞
假設我們有一組小寫字母單詞,我們需要找到所有單詞首字母相同的連續子列表的最大長度。
例如,如果輸入是 ["she", "sells", "seashells", "on", "the", "seashore"],則輸出為 3,因為三個連續的單詞 "she"、"sells"、"seashells" 的首字母都是 's'。
為了解決這個問題,我們將遵循以下步驟:
- maxlength := 0
- curr_letter := Null, curr_length := 0
- 遍歷words中的每個單詞:
- 如果 curr_letter 為空或 curr_letter 與 word[0] 不相同,則
- maxlength := maxlength 和 curr_length 之間的最大值
- curr_letter := word[0], curr_length := 1
- 否則:
- curr_length := curr_length + 1
- 如果 curr_letter 為空或 curr_letter 與 word[0] 不相同,則
- 返回 maxlength 和 curr_length 之間的最大值
讓我們來看下面的實現,以便更好地理解:
示例
class Solution: def solve(self, words): maxlength = 0 curr_letter, curr_length = None, 0 for word in words: if not curr_letter or curr_letter != word[0]: maxlength = max(maxlength, curr_length) curr_letter, curr_length = word[0], 1 else: curr_length += 1 return max(maxlength, curr_length) ob = Solution() words = ["she", "sells", "seashells", "on", "the", "seashore"] print(ob.solve(words))
輸入
["she", "sells", "seashells", "on", "the", "seashore"]
輸出
3
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP