Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Memutar Senarai dengan Cekap dalam Python?

Bagaimanakah Saya Boleh Memutar Senarai dengan Cekap dalam Python?

Susan Sarandon
Lepaskan: 2024-12-15 10:07:14
asal
906 orang telah melayarinya

How Can I Efficiently Rotate a List in Python?

Putaran Senarai yang Cekap dalam Python

Memutar senarai merujuk kepada mengalihkan elemennya bilangan kedudukan tertentu ke mana-mana arah. Walaupun kod yang disediakan menggunakan penghirisan berfungsi, terdapat peningkatan prestasi yang boleh dicapai.

Menggunakan Collections.Deque

Pustaka standard Python menyediakan struktur data yang lebih cekap untuk operasi sedemikian: collections.deque. Deques dioptimumkan untuk melaksanakan operasi seperti enqueue dan dequeue dari kedua-dua hujung. Mereka juga menawarkan kaedah rotate() khusus.

Untuk menggunakan deque untuk penggiliran senarai, ikut langkah berikut:

  1. Import kelas deque: dari collections import deque.
  2. Mulakan deque daripada senarai asal: item = deque(list()).
  3. Untuk memutarkan kemudian, gunakan kaedah rotate(), menyatakan bilangan kedudukan untuk beralih. Nilai positif beralih ke kanan, manakala nilai negatif beralih ke kiri.
  4. Dapatkan item pertama daripada deque menggunakan popleft() atau popright() untuk mendapatkan senarai diputar.

Contoh

Pertimbangkan perkara berikut contoh:

from collections import deque

items = deque([1, 2, 3])
items.rotate(1)        # deque == [3, 1, 2]
items.rotate(-1)       # deque returns to original state: [1, 2, 3]
item = items.popleft() # deque == [2, 3]
Salin selepas log masuk

Dalam kes ini, deque bermula sebagai [1, 2, 3]. Selepas berputar sekali ke kanan, ia menjadi [3, 1, 2]. Memutar kembali ke kiri mengembalikannya kepada susunan asalnya. Akhir sekali, mengalih keluar item pertama menghasilkan deque yang mengandungi [2, 3].

Dengan menggunakan kaedah deque dan rotate(), anda boleh mencapai putaran senarai yang cekap dalam Python.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memutar Senarai dengan Cekap dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan