회전된 배열을 반대로 해야 할 때 목록을 반복하고 목록을 뒤집는 메서드가 정의됩니다. 목록을 회전하는 또 다른 방법이 정의되고 목록을 표시하는 또 다른 방법이 정의됩니다. 이를 위해 간단한 루프와 인덱싱이 사용됩니다.
아래는 동일한 데모입니다 -
예시
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' 메서드가 호출되며 회전 및 반전 후 요소가 콘솔에 표시됩니다.