Hashtabelle
Version vom 31. Oktober 2023, 09:01 Uhr von Linkai.zhang (Diskussion | Beiträge) (→Vorteile der Hashtabellen generell)
- Die Bash verwaltet eine Hash-Tabelle, in der sie sich automatisch alle bereits aufgerufenen externen Kommandos zusammen mit deren absolutem Pfad merkt.
- Wenn ein externes Kommando aufgerufen werden soll, prüft die Bash zuerst, ob dieses Kommando in der Hashtabelle zu finden ist.
- Falls ja, verwendet sie den dort gespeicherten absoluten Pfad.
- Anderenfalls durchsucht sie die in PATH genannten Verzeichnisse nach dem Kommando.
- Wurde es gefunden, ergänzt die Bash diesen Treffer in der Hashtabelle.
Anzeigen
- hash
hits command 1 /usr/bin/ls 1 /usr/bin/id 2 /usr/bin/sudo
Löschen
- hash -r
Vorteile der Hashtabellen generell
- Hashtabellen ermöglichen schnellen Zugriff auf Daten durch die Verwendung einer Hash-Funktion.
- Einfügungen und Löschungen von Schlüssel-Wert-Paaren erfolgen in der Regel in konstanter Zeit.
- Hashtabellen sind vielseitig einsetzbar und anpassbar an verschiedene Programmieranforderungen.
- Die durchschnittliche Zeitkomplexität für Schlüsseloperationen beträgt O(1).
- Sie nutzen vergleichsweise wenig Speicher, da sie keinen zusätzlichen Overhead verwenden.
- Ein Lastenausgleich sorgt für eine gleichmäßige Verteilung von Daten.
- Hashtabellen können dynamisch wachsen oder schrumpfen, um die Leistung beizubehalten.
- Kollisionen werden durch Mechanismen wie Verketten oder offenes Adressieren gelöst.
- Die Leistung von Hashtabellen ist in der Regel vorhersehbar und konsistent.
- Sie finden Anwendung in Hochleistungsanwendungen wie Datenbankindizierung und Caching-Systemen.