Bidirektionale Hash-Tabellen-Implementierung in Python
Pythons integriertes Diktat ist eine äußerst nützliche Datenstruktur, die eine effiziente Suche basierend auf Schlüsseln ermöglicht. Es gibt jedoch Situationen, in denen eine umgekehrte Suche nach Werten gewünscht ist. Dieser Artikel untersucht die effizientesten Methoden zur Implementierung einer bidirektionalen Hash-Tabelle und bietet ein Beispiel, das von vorhandenen Lösungen inspiriert und an spezifische Anforderungen angepasst wurde.
Implementierung
Die vorgestellte Lösung verwendet ein benutzerdefiniertes Klassen-Dikt, das das Standard-Python-Dikt erweitert. Es verwaltet ein zusätzliches inverses Wörterbuch, das sich automatisch aktualisiert, wenn das Gebot geändert wird. Dieses inverse Wörterbuch ordnet Werte einer Liste von Schlüsseln zu, denen dieser Wert zugewiesen ist.
Wichtig ist, dass diese Implementierung im Gegensatz zu bestehenden Bibliotheken mehrere Schlüssel mit demselben Wert zulässt. Diese Funktion ist in bestimmten Szenarien von entscheidender Bedeutung.
Verwendung
Die Bidict-Klasse verwendet die folgenden Schlüsselmethoden:
Beispielverwendung
<code class="python">bd = bidict({'a': 1, 'b': 2}) print(bd.inverse) # {1: ['a'], 2: ['b']} bd['c'] = 1 print(bd.inverse) # {1: ['a', 'c'], 2: ['b']} del bd['c'] print(bd.inverse) # {1: ['a'], 2: ['b']}</code>
Das obige ist der detaillierte Inhalt vonWie implementiert man in Python eine bidirektionale Hash-Tabelle für mehrere Schlüssel mit demselben Wert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!