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

配列内の反転をカウントするPythonプログラム


この記事では、以下に示す問題ステートメントの解決策について学習します。

問題の説明 −リストが表示されます。必要な反転をカウントして表示する必要があります。

反転カウントは、配列をソートするために必要なステップ数をカウントすることによって取得されます。

次に、以下の実装のソリューションを見てみましょう-

# count
def InvCount(arr, n):
   inv_count = 0
   for i in range(n):
      for j in range(i + 1, n):
         if (arr[i] > arr[j]):
            inv_count += 1
   return inv_count
# Driver Code
arr = [1,5,3,8,7]
n = len(arr)
print("Total number of inversions are:",InvCount(arr, n))

出力

Total number of inversions are: 2

配列内の反転をカウントするPythonプログラム

すべての変数はローカルスコープで宣言されており、それらの参照は上の図に示されています。

結論

この記事では、配列内の反転をカウントするPythonプログラムを作成する方法について学びました


  1. 配列の合計を見つけるPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 入力として配列が与えられた場合、与えられた配列の合計を計算する必要があります。 ここでは、ブルートフォースアプローチに従うことができます。つまり、リストをトラバースし、各要素を空の合計変数に追加します。最後に、合計の値を表示します。 以下で説明するように、組み込みの合計関数を使用して別のアプローチを実行することもできます。 例 # main arr = [1,2,3,4,5] ans = sum(arr,n) print ('Sum of the array is '

  2. Pythonプログラムでの挿入ソート

    この記事では、Python3.xでの挿入ソートの実装について学習します。またはそれ以前。 アルゴリズム ソートされた配列を各反復で拡張することにより、入力要素を反復します。 現在の要素を、並べ替えられた配列で使用可能な最大値と比較します。 現在の要素の方が大きい場合は、その要素をそのままにして次の要素に移動します。それ以外の場合は、並べ替えられた配列内で正しい位置を見つけて、配列内のその位置に移動します。 これは、並べ替えられた配列内の現在の要素よりも大きいすべての要素を右にシフトすることで実現されます。 それでは、アルゴリズムの視覚的表現を見てみましょう