[LeetCode][Easy]Most Common Word
1026 ワード
質問する
に答える
パイソンは確かに有利な問題タイプだ.
リスト計算により、次の4つが1つのキューで終了します.
(1)文字のみ抽出
(2)小文字に変換
(3)単語単位で切り取る
(4)禁制語の削除words = [word for word in re.sub('[^\w]', " ", paragraph).lower().split() if not in banned]
以降の周波数計算に特化したcollection.Counterオブジェクトとして作成します.
このとき注意しなければならないのはcollectionです.Counterはディックシリーズを再包装した構造です.
most common(1)で抽出し、[キー]、[value]として出力します.
キー値のみを抽出する場合は、最初のオブジェクトの最初の要素を表す[0][0]を貼り付ける必要があります.
コード全体を以下に示します.class Solution:
def mostCommonWord(self, paragraph: str, banned: List[str]) -> str:
words = [word for word in re.sub('[^\w]', " ", paragraph)
.lower().split() if word not in banned]
return collections.Counter(words).most_common(1)[0][0]
Reference
この問題について([LeetCode][Easy]Most Common Word), 我々は、より多くの情報をここで見つけました
https://velog.io/@bae12/LeetCodeEasyMost-Common-Word
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
words = [word for word in re.sub('[^\w]', " ", paragraph).lower().split() if not in banned]
class Solution:
def mostCommonWord(self, paragraph: str, banned: List[str]) -> str:
words = [word for word in re.sub('[^\w]', " ", paragraph)
.lower().split() if word not in banned]
return collections.Counter(words).most_common(1)[0][0]
Reference
この問題について([LeetCode][Easy]Most Common Word), 我々は、より多くの情報をここで見つけました https://velog.io/@bae12/LeetCodeEasyMost-Common-Wordテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol