Bagaimana untuk Cekap Menentukan Kehadiran Sublist dalam Senarai Python?

Linda Hamilton
Lepaskan: 2024-10-26 18:01:03
asal
252 orang telah melayarinya

How to Efficiently Determine Sublist Presence in a Python List?

Menentukan Kehadiran Subsenarai dalam Senarai Python

Untuk menyemak sama ada subsenarai wujud dalam senarai yang lebih besar, seseorang boleh menggunakan kuasa pengaturcaraan berfungsi dalam Python. Berikut ialah fungsi ringkas yang menyelesaikannya:

<code class="python">def contains_sublist(lst, sublst):
    n = len(sublst)
    return any((sublst == lst[i:i+n]) for i in range(len(lst)-n+1))</code>
Salin selepas log masuk

Fungsi berfungsi dengan melelakan senarai lst yang lebih besar, bermula pada indeks i, dan membandingkan sepotong panjang n (panjang subsenarai) dengan subsenarai sublst. Jika mana-mana kepingan ini sepadan dengan sublst, fungsi mengembalikan True. Jika tidak, ia mengembalikan Palsu.

Pertimbangkan contoh berikut:

<code class="python">lst1 = [1,0,1,1,1,0,0]
lst2 = [1,0,1,0,1,0,1]

sublistExists(lst1, [1,1,1]) == True
sublistExists(lst2, [1,1,1]) == False</code>
Salin selepas log masuk

Fungsi beroperasi dalam kerumitan masa O(m*n), dengan m ialah panjang senarai yang lebih besar dan n ialah panjang subsenarai. Ia memanfaatkan fungsi any() untuk keluar dengan cekap pada perlawanan pertama, memastikan kecekapan pengiraan.

Atas ialah kandungan terperinci Bagaimana untuk Cekap Menentukan Kehadiran Sublist dalam Senarai 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!