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

すべての1がPythonに次々に存在するかどうかをチェックするプログラム


値が1である要素を少なくとも1つ含むnumsという数値のリストがあるとします。すべての1が連続して表示されるかどうかを確認する必要があります。

したがって、入力がnums =[8、2、1、1、1、3、5]のような場合、出力はTrueになります。

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

  • 訪問した:=0

  • numsのxごとに、実行します

    • xが1と同じ場合、

      • 訪問したのが2と同じ場合、

        • Falseを返す

      • 訪問した:=1

    • それ以外の場合、訪問したときにゼロ以外の場合、

      • 訪問した:=2

  • Trueを返す

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

def solve(nums):
   visited = 0
   for x in nums:
      if x == 1:
         if visited == 2:
            return False
         visited = 1
      elif visited:
         visited = 2
   return True

nums = [8, 2, 1, 1, 1, 3, 5]
print(solve(nums))

入力

[8, 2, 1, 1, 1, 3, 5]

出力

True

  1. ツリー内のすべての値がPythonで同じかどうかをチェックするプログラム

    二分木があるとすると、ツリー内のすべてのノードが同じ値であるかどうかを確認する必要があります。 したがって、入力が次のような場合 その場合、出力はTrueになります これを解決するには、次の手順に従います- 関数solve()を定義します。これはルートになり、val ルートがnullの場合、 Trueを返す valが定義されていない場合、 val:=ルートの値 ルートの値がvalと同じで、solve(ルートの左側、val)およびsolve(ルートの右側、val)もtrueの場合、trueを返します 理解を深めるために、次の実装を見

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

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