用于数组旋转的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("list是:")
print(my_list)
print("left_rotate方法被调用")
left_rotate(my_list, 3)
print("轮换后的列表是: ")
print_it(my_list)

输出结果

list是:
[34, 42, 56, 78, 9, 0, 23]
left_rotate方法被调用
轮换后的列表是:
78
9
0
23
34
42
56

解释

  • 定义了一个名为“ reverse_list”的方法,该方法可以反转给定的列表。

  • 定义了另一个名为“ rotate_list”的方法,该方法根据特定的枢轴值旋转列表。

  • 定义了另一个名为“ print_it”的方法,该方法在控制台上打印列表。

  • 列表已定义,并显示在控制台上。

  • 在此列表中调用“ left_rotate”方法,旋转和反转后,元素将显示在控制台上。