Python
 Computer >> コンピューター >  >> プログラミング >> Python

同じ値と頻度要素をチェックするプログラムがPythonにあるかどうか


numsという数値のリストがあるとすると、頻度がその値と同じ要素があるかどうかを確認する必要があります。

したがって、入力がnums =[2,5,7,5,3,5,3,5,9,9,5]のような場合、5が5回表示されるため、出力はTrueになります。

これを解決するには、次の手順に従います-

  • nums_c:=numsに存在する各要素の頻度を含むリスト

  • nums_cの値iと頻度jごとに、次のようにします

    • iがjと同じ場合、

      • Trueを返す

  • Falseを返す

理解を深めるために、次の実装を見てみましょう

from collections import Counter
def solve(nums):
   nums_c = Counter(nums)
   for i, j in nums_c.items():
      if i == j:
         return True
   return False

nums = [2,5,7,5,3,5,3,5,9,9,5]
print(solve(nums))

入力

[2,5,7,5,3,5,3,5,9,9,5]

出力

True

  1. グラフに共通の到達可能なノードがあるかどうかをPythonでチェックするプログラム

    有向グラフのエッジリストがあり、ノードがn個あり、ノード名が0〜n-1であるとします。2つの整数値aとbもあります。 cからaに、またcからbに移動できるようなノードcがあるかどうかを確認する必要があります。 したがって、入力が次のような場合 また、a =2、b =3の場合、出力はTrueになります。これは、ここではc =0であるため、0から2、さらには0から3へのルートがあります。 これを解決するには、次の手順に従います- 関数DFS()を定義します。これは、グラフ、ノード、訪問済みを取得します ノードにアクセスしていない場合は、 ノードを訪問済みとしてマーク グラフ[ノード]

  2. Pythonで1つの値がBSTに存在するかどうかを確認するプログラム

    二分探索木とvalという別の入力があるとすると、valがツリーに存在するかどうかを確認する必要があります。 したがって、入力が次のような場合 val =7の場合、ツリーに7が存在するため、出力はTrueになります。 これを解決するために、次の手順に従います- 関数solve()を定義します。これはルートになります、val ルートがnullの場合、 Falseを返す ルートのデータがvalと同じ場合、 Trueを返す ルートのデータが