typescript / intermediate
Snippet
Beschleunigung von Suchoperationen durch Indizieren von Arrays mit Map-Instanzen
Das Umwandeln linearer Array-Iterationen in Map-Abfragen tauscht Speicher gegen Leistung und verbessert die Suchkomplexität von O(N) linearer Zeit auf O(1) konstante Zeit.
snippet.ts
typescript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
interface UserRecord {id: number;email: string;}class UserIndex {private indexMap = new Map<number, UserRecord>();constructor(records: UserRecord[]) {for (const record of records) {this.indexMap.set(record.id, record);}}public findById(id: number): UserRecord | undefined {return this.indexMap.get(id);}}
Erklärung
1
private indexMap = new Map<number, UserRecord>();
Kapselt eine stark typisierte Map-Datenstruktur zur Speicherung von Schlüssel-Wert-Indexeinträgen.
2
this.indexMap.set(record.id, record);
Füllt den Index während der Initialisierung für den schnellen Abruf zur Laufzeit.
3
return this.indexMap.get(id);
Führt eine O(1)-Suche durch, um Datensätze unabhängig von der Array-Größe sofort abzurufen.