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

Pythonでキュー要素がペアごとに連続しているかどうかを確認します


数字でいっぱいのキューがあるとします。キュー内の連続する要素がペアごとに連続しているかどうかを確認する必要があります。

したがって、入力がque =[3,4,6,7,8,9]のような場合、出力はTrueになります。

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

  • q:=キューを定義し、指定されたリストのすべての要素をqに挿入します
  • temp:=新しいリスト
  • qが空でない間は、
    • キューのフロント要素を一時に挿入し、キューからフロント要素を削除します
  • temp2:=新しいリスト
  • tempが空でない間は、
    • tempの最後の要素をtemp2に挿入します
    • 一時から最後の要素を削除
  • 結果:=True
  • temp2のサイズ>1の場合、実行
    • x:=temp2の最後の要素
    • temp2から最後の要素を削除します
    • y:=temp2の最後の要素
    • temp2から最後の要素を削除します
    • if | x --y | 1ではない場合
      • 結果:=False
    • xとyをqに挿入
  • temp2のサイズが1の場合、
    • temp2の最後の要素をqに挿入します
  • 結果を返す

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

import queue
def solve(que):
   q = queue.Queue()
   for i in que:
      q.put(i)
   temp = []
   while q.qsize() != 0:
      temp.append(q.queue[0])
      q.get()
   temp2 = []
   while len(temp) != 0:
      temp2.append(temp[len(temp) - 1])
      temp.pop()
   result = bool(True)
   while len(temp2) > 1:
      x = temp2[len(temp2) - 1]
      temp2.pop()
      y = temp2[len(temp2) - 1]
      temp2.pop()
      if abs(x - y) != 1:
         result = False
      q.put(x)
      q.put(y)
   if len(temp2) == 1:
      q.put(temp2[len(temp2) - 1])
   return result
que = [3,4,6,7,8,9]
print(solve(que))

入力

[3,4,6,7,8,9]

出力

True

  1. Python-リスト内のすべての要素が同一であるかどうかを確認します

    リストに同じ値がすべて含まれる場合があります。この記事では、それを確認するためのさまざまな方法を紹介します。 すべてで all関数を使用して、リストの各要素を最初の要素と比較した結果を見つけます。各比較で等しい結果が得られた場合、結果はすべての要素が等しいために与えられます。そうでない場合、すべての要素は等しくありません。 例 listA = ['Sun', 'Sun', 'Mon'] resA = all(x == listA[0] for x in listA) if resA:    print("in

  2. Python-リスト内のすべての要素が同じかどうかを確認します

    リスト要素としてリスト内で1つの単一の値が繰り返されているかどうかを確認する必要がある場合があります。以下のPythonプログラムを使用して、このようなシナリオを確認できます。さまざまなアプローチがあります。 forループの使用 このメソッドでは、リストから最初の要素を取得し、従来のforループを使用して、各要素を最初の要素と比較し続けます。値がどの要素とも一致しない場合、ループから抜け出し、結果はfalseになります。 例 List = ['Mon','Mon','Mon','Mon'] result = True # Get