用于数组旋转的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”方法,旋转和反转后,元素将显示在控制台上。