FAGPORTALEN

Hash-tabeller og dictionaries

It A · STX · A-niveau · Datastrukturer og algoritmer

💻 Hash-tabeller og dictionaries

Hash-tabel: datastruktur med O(1) gennemsnitlig søgning, indsæt, slet.

Hash-funktion: mapper en nøgle til et indeks i en array. God hash-funktion: uniform fordeling, deterministisk, hurtig.

Kollisioner (to nøgler → samme indeks): løses ved Chaining (liste ved hvert indeks) eller Open addressing (linear probing, quadratic probing, double hashing).

Load factor (α = n/m, antal elementer/tabel-størrelse): ved α > 0,7 rehashes tabellen (dobler og genindekserer).

Python dict: hash-tabel implementering. Nøgler skal være hashable (immutable: int, str, tuple). {key: value} syntax. O(1) opslag.

Anvendelser

database-indeksering, caching (memoization), deduplicering (find unikke elementer), frekvens-optælling (Counter).

SHA-256 og kryptografiske hashes: envejs-funktion (kan ikke inverteres). Bruges til password-lagring (bcrypt = hash + salt + iterationer), digital signatur, blockchain.

Birthday paradox: 50% chance for kollision ved √n elementer i tabel af størrelse n — vigtigt for kryptografisk styrke.

Læringsmål

Sådan kan du arbejde med emnet

Arbejd iterativt med prototyper og dokumentation. Test, evaluér og dokumentér.

Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.

Prøv Fagportalen gratis

🤖 Denne side er skrevet med kunstig intelligens og fagligt gennemgået af Fagportalen, som har det redaktionelle ansvar. Finder du en fejl, så skriv til support@fagportalen.dk.