Optimierung der Worst-Case-Time-Komplexität auf O (1) für Python-Dikte

Ich muss 500 Millionen zweistellige Unicode-Zeichen im Arbeitsspeicher (RAM) speichern.

Die von mir verwendete Datenstruktur sollte Folgendes haben:

Worst Case Space Complexity: O(n)
Worst Case Time Complexity: O(1) <-- insertion, read, update, deletion

Ich habe darüber nachgedacht, dikt zu wählen, das die Implementierung von Hash in Python ist, aber dann ist das Problem, dass es die Zeitkomplexität von O (1) für die erforderlichen Operationen nur in durchschnittlichen Fällen als im schlimmsten Fall sicherstellt.

Ich habe gehört, dass bei bekannter Anzahl von Einträgen die Zeitkomplexität von O (1) im ungünstigsten Fall erreicht werden kann.

Wie geht das?

Falls das in Python nicht möglich ist, kann ich dann direkt in meinem Python-Code auf die Speicheradressen und die darauf befindlichen Daten zugreifen? Wenn ja, wie?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage