Ich möchte zählen, wie oft zwei Listen (list1
und list2
) dieselbe Nummer im selben Index haben.Python: Anzahl der elementgleichen Elemente
Zunächst gibt es diesen Ansatz:
def count_common(list1, list2):
count = 0
for i, elem1 in enumerate(list1):
if elem1 == list2[i]:
count += 1
return count
Dies ist O (n) Zeit und O (1) Raum.
Wenn ich die mehr Pythonic Weise versuchen, erhalte ich O (n) Raum:
def count_common(list1, list2):
return sum([1 for (elem1, elem2) in zip(list1, list2) if elem1 == elem2])
Gibt es eine Pythonic Art und Weise tun, die die O (1) Raum in meiner ersten Lösung verwendet hält?
Danke!