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’ 方法,並在旋轉和反轉後在控制檯中顯示元素。

更新於: 2021 年 3 月 12 日

294 次瀏覽

開啟你的 職業生涯

完成課程即可獲得認證

開始
廣告