Heim  >  Artikel  >  Backend-Entwicklung  >  Wie findet man effizient das häufigste Element in einer Python-Liste, auch bei nicht hashbaren Elementen?

Wie findet man effizient das häufigste Element in einer Python-Liste, auch bei nicht hashbaren Elementen?

Susan Sarandon
Susan SarandonOriginal
2024-11-24 15:02:11276Durchsuche

How to Efficiently Find the Most Common Element in a Python List, Even With Non-Hashable Items?

Effizientes Finden des häufigsten Elements in einer Liste

In Python kann das Ermitteln des am häufigsten vorkommenden Elements in einer Liste eine Herausforderung darstellen. insbesondere wenn Listenelemente nicht hashbar sind. Um dieses Problem anzugehen, stellen wir einen effizienten Ansatz vor, der bei Unentschieden das Element mit dem niedrigsten Index priorisiert.

Betrachten Sie die folgende Python-Funktion:

def most_common(lst):
    return max(set(lst), key=lst.count)

Diese Funktion eliminiert Duplikate aus die Eingabelistenliste durch Konvertieren in eine Menge. Anschließend wird die Funktion max() verwendet, um das Element mit der höchsten Anzahl aus der Menge zu identifizieren. Der Schlüsselparameter gibt an, dass der Vergleich auf der Anzahl jedes Elements basieren soll, wie durch die lst.count-Methode bestimmt.

Betrachten Sie zur Veranschaulichung diese Beispiele:

>>> most_common(['duck', 'duck', 'goose'])
'duck'

Hier Beispielsweise kommt „Duck“ zweimal vor, während „Goose“ nur einmal vorkommt. Daher wird „Duck“ als häufigstes Element zurückgegeben.

>>> most_common(['goose', 'duck', 'duck', 'goose'])
'goose'

In diesem Szenario kommen sowohl „Goose“ als auch „Duck“ zweimal vor. Da „goose“ jedoch einen niedrigeren Index besitzt, wird es als häufigstes Element zurückgegeben.

Dieser Ansatz findet effektiv das häufigste Element in einer Liste, auch wenn die Elemente nicht hashbar sind, und priorisiert es Element mit dem niedrigsten Index bei Gleichstand.

Das obige ist der detaillierte Inhalt vonWie findet man effizient das häufigste Element in einer Python-Liste, auch bei nicht hashbaren Elementen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn