https://github.com/mkwapisz2000/cpp-hash-table-algorithms
This project contains implementations of different hash table strategies in C++.
https://github.com/mkwapisz2000/cpp-hash-table-algorithms
chaining cpp cuckoo-hashing data-structures hash-table hashing-algorithms open-adressing
Last synced: about 1 year ago
JSON representation
This project contains implementations of different hash table strategies in C++.
- Host: GitHub
- URL: https://github.com/mkwapisz2000/cpp-hash-table-algorithms
- Owner: MKwapisz2000
- Created: 2024-05-14T18:30:35.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2025-02-18T19:25:54.000Z (about 1 year ago)
- Last Synced: 2025-02-18T20:31:12.452Z (about 1 year ago)
- Topics: chaining, cpp, cuckoo-hashing, data-structures, hash-table, hashing-algorithms, open-adressing
- Language: C++
- Homepage:
- Size: 84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**Hash Table Algorithms – Implementation of Various Hashing Methods**
This project contains implementations of different hash table strategies in C++. The following methods are included:
- Open Addressing
- Closed Addressing (Chaining) using a balanced BST
- Cuckoo Hashing – a strategy using two hash functions and element swapping
Features
- Insertion (insert(value, key)) and deletion (remove(key)) of elements
- Displaying current table contents (show())
- Automatic resizing of the hash table when needed (increase_capacity())
- Performance measurement for different data sizes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
**Tablice mieszające – Implementacje różnych metod hashowania**
Projekt zawiera implementacje różnych strategii tablic mieszających (hash tables) w języku C++. W szczególności zaimplementowano:
- Adresowanie otwarte (Open Addressing)
- Adresowanie zamknięte (Chaining) z wykorzystaniem zbalansowanego BST
- Cuckoo Hashing – strategia wykorzystująca dwa hashe i podmianę elementów
Funkcjonalność
- Możliwość wstawiania (insert(value, key)) i usuwania (remove(key)) elementów
- Wyświetlanie aktualnej zawartości tablic (show())
- Automatyczne zwiększanie rozmiaru tablicy mieszającej, jeśli zajdzie potrzeba (increase_capacity())
- Pomiar wydajności algorytmów dla różnych rozmiarów danych