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

配列回転の反転アルゴリズム用のPythonプログラム


回転した配列を逆にする必要がある場合は、リストを反復処理してリストを逆にするメソッドが定義されます。リストをローテーションする別のメソッドが定義され、リストを表示する別のメソッドが定義されています。これを実現するために、単純なループとインデックス作成が使用されます。

以下は同じのデモンストレーションです-

def reverse_list(my_list, begin, end):
   while (begin < end):
      temp = my_list[begin]
      my_list[begin] = my_list[end]
      my_list[end] = temp
      begin += 1
      end = end-1
def left_rotate(my_list, to_rotate):
   n = len(my_list)
   reverse_list(my_list, 0, to_rotate-1)
   reverse_list(my_list, to_rotate, n-1)
   reverse_list(my_list, 0, n-1)
def print_it(my_list):
   for i in range(0, len(my_list)):
      print(my_list[i])
my_list = [34, 42, 56, 78, 9, 0, 23]
print("The list is :")
print(my_list)
print("The left_rotate method is being called")
left_rotate(my_list, 3)
print("The list after rotation is : ")
print_it(my_list)

出力

The list is :
[34, 42, 56, 78, 9, 0, 23]
The left_rotate method is being called
The list after rotation is :
78
9
0
23
34
42
56

説明

  • 「reverse_list」という名前のメソッドが定義されており、指定されたリストを逆にします。
  • 「rotate_list」という名前の別のメソッドが定義されています。これは、特定のピボット値に基づいてリストをローテーションします。
  • 「print_it」という名前の別のメソッドが定義されており、コンソールにリストを出力します。
  • リストが定義され、コンソールに表示されます。
  • このリストでは「left_rotate」メソッドが呼び出され、回転と反転の後に要素がコンソールに表示されます。

  1. nで割った配列乗算のリマインダーを見つけるためのPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します- 問題の説明 複数の数値と数値入力nが与えられた場合、除算可能なすべての数値にnを掛けた後、余りを出力する必要があります。 アプローチ まず、arr [i]%nのように余りを計算します。次に、この余りに現在の結果を掛けます。 乗算後、オーバーフローを避けるために同じ余りを取ります。これは、モジュラー演算の分配法則に準拠しています。 ( a * b) % c = ( ( a % c ) * ( b % c ) ) % c 例 def findremainder(arr, lens, n):   &n

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

    この記事では、Python3.xでの挿入ソートの実装について学習します。またはそれ以前。 アルゴリズム 1. Iterate over the input elements by growing the sorted array at each iteration. 2. Compare the current element with the largest value available in the sorted array. 3. If the current element is greater, then it leaves the element in its place &n