Việc xoay vòng của một danh sách cũng đã được thảo luận trước đó, nhưng bài viết đặc biệt này tập trung vào các khoản viết tắt và các kỹ thuật ngắn khác nhau để đạt được điều này trong một lớp hoặc một từ. Hoạt động này khá cần thiết trong cuộc sống của một lập trình viên để đạt được các nhiệm vụ khác nhau. Hãy để thảo luận về các cách khác nhau, chúng ta có thể xoay một danh sách trong Python. & NBSP;
Phương pháp 1: Xoay danh sách bằng cách cắt lát & nbsp;
Phương pháp cụ thể này là phương pháp chung và chủ yếu được sử dụng để đạt được nhiệm vụ này và cũng đã được thảo luận trong nhiều bài viết. Nó hoạt động bằng cách chỉ tham gia phần cắt sau này vào phần cắt lát ban đầu với số xoay. & NBSP;
Python3
Các
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
test_list
=
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]5
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7__
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Các
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
=
1=
2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Output:
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3 [ back to original] : [1, 4, 6, 7, 2]
Phương pháp 2: Xoay danh sách bằng cách sử dụng danh sách hiểu & nbsp;
Vấn đề này cũng có thể được giải quyết bằng phương pháp ngây thơ, nhưng việc thực hiện ngắn hơn của nó sẽ là với sự trợ giúp của việc hiểu danh sách. Trong phương pháp này, chúng tôi chỉ cần gán lại chỉ số cho từng giá trị cho vị trí cụ thể sau khi xoay. & NBSP;
Python3
Các
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
test_list
=
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]5
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7__
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Các
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
=
1=
2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Output:
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]
Phương pháp 2: Xoay danh sách bằng cách sử dụng danh sách hiểu & nbsp;
Vấn đề này cũng có thể được giải quyết bằng phương pháp ngây thơ, nhưng việc thực hiện ngắn hơn của nó sẽ là với sự trợ giúp của việc hiểu danh sách. Trong phương pháp này, chúng tôi chỉ cần gán lại chỉ số cho từng giá trị cho vị trí cụ thể sau khi xoay. & NBSP;
Python3
test_list
=
Các
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
test_list
=
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]5
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7__
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]44
test_list
1Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]47
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
test_list
=
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]5
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7__
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]9
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]44
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]6
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]47
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
[33 11 4 6 7 8]4
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]8
=
1=
2
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]0
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]1
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]2
Output:
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]
Phương pháp 2: Xoay danh sách bằng cách sử dụng danh sách hiểu & nbsp;Rotate a list using Numpy
Vấn đề này cũng có thể được giải quyết bằng phương pháp ngây thơ, nhưng việc thực hiện ngắn hơn của nó sẽ là với sự trợ giúp của việc hiểu danh sách. Trong phương pháp này, chúng tôi chỉ cần gán lại chỉ số cho từng giá trị cho vị trí cụ thể sau khi xoay. & NBSP;
Python3
test_list
=
,
4,
5 ,
6,
7 ,
8,
3
test_list
=
1
7test_list
1
Phương pháp 3: Xoay một danh sách bằng cách sử dụng comcands.deque.rotate [] & nbsp;
Mô -đun bộ sưu tập có một lớp deque cung cấp vòng quay [], là hàm sẵn để cho phép xoay. Đây là một chức năng ít được biết đến nhưng có tiện ích lớn hơn. & NBSP;
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]83
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]7
Original list : [1, 4, 6, 7, 2] List after left rotate by 3 : [7, 2, 1, 4, 6] List after right rotate by 3[back to original] : [1, 4, 6, 7, 2]09
Output:
[33 11 4 6 7 8]