文字列に存在する部分文字列の数をカウントするPythonプログラム
文字列sと部分文字列tがあるとします。 sでtが発生する回数を数える必要があります。
したがって、入力がs ="abaabcaabababaab"、t ="aab"の場合、部分文字列はab(aab)c(aab)abab(aab)であるため、出力は3になります。
これを解決するには、次の手順に従います-
- cnt:=0
- 0から(sのサイズ-tのサイズ)の範囲のiの場合、do
- s[インデックスiからiへ+t-1のサイズ]の部分文字列がtと同じである場合、
- cnt:=cnt + 1
- s[インデックスiからiへ+t-1のサイズ]の部分文字列がtと同じである場合、
- return cnt
例
理解を深めるために、次の実装を見てみましょう
def solve(s, t): cnt = 0 for i in range(0, len(s) - len(t) + 1): if s[i:i + len(t)] == t: cnt = cnt + 1 return cnt s = "abaabcaabababaab" t = "aab" print(solve(s, t))
入力
"abaabcaabababaab", "aab"
出力
3
-
PythonでnノードのBSTの数をカウントするプログラム
n個の異なるノードがあるとします。すべてが異なります。二分探索木を形成するためにそれらを配置できる方法の数を見つける必要があります。二分探索木で知っているように、左側のサブツリーは常に小さい値を保持し、右側のサブツリーは大きい値を保持します。 これを解決するために、カタラン数を見つけます。カタラン数C(n)は、n個の異なるキーを持つ二分探索木を表します。式は次のようになります $$ C(n)=\ frac {(2n)!} {(n + 1)!\ times n!} $$ したがって、入力がn =3の場合、出力は5になります。 これを解決するには、次の手順に従います- 関数ncr
-
指定された文字列のセットを使用して母音の数をカウントするPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −文字列が与えられたので、与えられた文字列のセットを使用して母音の数を数える必要があります。 ここでは、文字列全体をトラバースして、各文字が母音であるかどうかを確認し、カウントをインクリメントします。 次に、以下の実装の概念を観察しましょう- 例 def vowel_count(str): count = 0 #string of vowels vowel = "aeiouAEIOU" &nbs