Cách thực hiện xoay trái mảng trong Python
Trong hướng dẫn này, chúng ta sẽ xem cách xoay một mảng trong Python theo một số phần tử nhất định. Xoay một mảng là một quá trình liên quan đến việc dịch chuyển các phần tử theo n vị trí. Sự dịch chuyển các phần tử sang trái này được gọi là phép quay trái và dịch chuyển sang phải được gọi là phép quay phải Show
Các bước xoay mảng trái trong Python
Mã giả cho các bước trênrotLeft(mảng, num_of_elements) b = [] bắt đầu cho i = num_of_elements thành i = len(arr) thêm phần tử vào b thêm các phần tử còn lại trong arr vào b
def rotLeft(a, d): b = [] for i in range(-d,len(a)): b.append(a[i]) b.extend(a[0:d]) return b rotLeft([1,2,3,4,5,6,7],2) rotLeft([12,45,20,11,10,56],1) Output: [3, 4, 5, 6, 7, 1, 2] [45, 20, 11, 10, 56, 12] Ở đây, n phần tử đầu tiên của mảng đã di chuyển về cuối trong cả hai trường hợp Ghi chú
Cũng đọc. Làm cách nào để triển khai Cây phân đoạn trong Python? 3 phản hồi cho “Cách xoay mảng trong Python”
Để lại một câu trả lờiĐịa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu * Nhận xét * Tên * Email * Vui lòng bật JavaScript để gửi biểu mẫu nàyPhương pháp 1. Mã trong Python#Write a program for array rotation in Python # Python3 program to rotate an array by def leftRotate(arr, d, n): for i in range(d): leftRotatebyOne(arr, n) # Function to left Rotate arr[] of size n by 1*/ def leftRotatebyOne(arr, n): temp = arr[0] for i in range(n-1): arr[i] = arr[i + 1] arr[n-1] = temp # utility function to print an array */ def printArray(arr, size): for i in range(size): print ("% d"% arr[i], end =" ") # Driver program to test above functions */ arr = [10, 20, 30, 40, 50, 60, 70] leftRotate(arr, 2, 7) printArray(arr, 7) Khi cần xoay trái các phần tử của một mảng, mảng có thể được lặp đi lặp lại và tùy thuộc vào số lần xoay trái, chỉ số có thể được tăng lên nhiều lần Dưới đây là một minh chứng tương tự - Thí dụBản thử trực tiếp my_list = [11, 12, 23, 34, 65] n = 3 print("The list is : ") for i in range(0, len(my_list)): print(my_list[i]) for i in range(0, n): first_elem = my_list[0] for j in range(0, len(my_list)-1): my_list[j] = my_list[j+1] my_list[len(my_list)-1] = first_elem print() print("Array after left rotating is : ") for i in range(0, len(my_list)): print(my_list[i]) đầu raThe list is : 11 12 23 34 65 Array after left rotating is : 34 65 11 12 23 Giải trình
|