aboutsummaryrefslogtreecommitdiff
path: root/src/HashTable.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/HashTable.h')
-rw-r--r--src/HashTable.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/HashTable.h b/src/HashTable.h
new file mode 100644
index 0000000..1ede7be
--- /dev/null
+++ b/src/HashTable.h
@@ -0,0 +1,26 @@
+#pragma once
+
+#include <cstddef>
+#include <cstring>
+#include <list>
+#include <utility>
+#include <vector>
+
+namespace TehImage
+{
+ class HashTable
+ {
+ private:
+ const size_t TABLE_SIZE;
+ std::vector<std::list<std::pair<unsigned int, unsigned int>>> table;
+
+ public:
+ HashTable(size_t size);
+
+ unsigned int hashFunction(char key[3]);
+ void insert(char key[3], unsigned int value);
+ void remove(char key[3]);
+ unsigned int get(char key[3]);
+ bool contains(char key[3]);
+ };
+}