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’ 方法,并在旋转和反转后在控制台中显示元素。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
安卓
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP