GeeksforGeeks

List er en vigtig container i python, da den gemmer elementer af alle datatyper som en samling. Kendskab til visse list-operationer er nødvendige for dag-til-dag-programmering. Denne artikel diskuterer en af de grundlæggende listeoperation af måder at kontrollere eksistensen af et element i listen.

Metode 1 : Naiv metode

I naiv metode bruger man nemt en løkke, der itererer gennem alle elementer for at kontrollere eksistensen af målelementet. Dette er den enkleste måde at kontrollere elementets eksistens i listen.

Metode 2 : Brug af in

Python in er den mest konventionelle metode til at kontrollere, om et element findes i listen eller ej. Denne særlige metode returnerer True, hvis elementet findes i listen, og False, hvis elementet ikke findes i listen. Listen behøver ikke at være sorteret for at anvende denne metode til kontrol.
Kode #1 : Demonstration af at kontrollere eksistensen af element i liste ved hjælp af naiv metode og in

test_list =
print("Checking if 4 exists in list ( using loop ) : ")
for i in test_list:
if(i == 4) :
print ("Element Exists")
print("Checking if 4 exists in list ( using in ) : ")
if (4 in test_list):
print ("Element Exists")



Output :

Checking if 4 exists in list ( using loop ) : Element ExistsChecking if 4 exists in list ( using in ) : Element Exists

Metode 3 : Brug af set() + in

Det kan muligvis være mere effektivt at konvertere listen til et sæt og derefter bruge i end kun at bruge in. Men at have effektivitet som et plus har også visse ulemper. En af dem er, at rækkefølgen af listen ikke bevares, og hvis du vælger at tage en ny liste til det, vil du kræve at bruge ekstra plads. En anden ulempe er, at sæt ikke tillader duplikering, og derfor vil duplikerede elementer blive fjernet fra den oprindelige liste.

Metode 4 : Brug af sort() + bisect_left()

Den konventionelle binære søgemetode til test af elementers eksistens, og derfor skal listen sorteres først, og dermed bevares elementernes rækkefølge ikke. bisect_left() returnerer den første forekomst af det element, der skal findes, og fungerer på samme måde som lower_bound() i C++ STL.
Kode #2 : Demonstration af at kontrollere eksistensen af et element i listen ved hjælp af set() + in og sort() + bisect_left().

from bisect import bisect_left
test_list_set =
test_list_bisect =
print("Checking if 4 exists in list ( using set() + in) : ")
test_list_set = set(test_list_set)
if 4 in test_list_set :
print ("Element Exists")
print("Checking if 4 exists in list ( using sort() + bisect_left() ) : ")
test_list_bisect.sort()
if bisect_left(test_list_bisect, 4):
print ("Element Exists")



Artikel Tags :
Practice Tags :

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.