Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- class HashTableList
- {
- static const int default_size = 17; // нач размер табицы
- constexpr static const double rehash_size = 0.75;//коэф увеличени\ таблицы
- struct Node {
- int key;
- int value; // индекс элемента в массиве с данными по ключу
- Node *next; // признак свободного\ зан\того адреса
- };
- Node* arr; // соответственно в масиссиве будут храниться
- // структуры NODE
- int size; // сколько элементов у нас сейчас в массиве
- int buffer_size; // без учета удаленных
- // размер самого массива, сколько памяти выделено на хранение нашей таблицы
- int size_all_non_nullptr; // сколько элементов у нас сейчас в массиве
- HashTableList();
- ~HashTableList();
- bool Insert(const int value1, int key1);
- void Rehash();
- int Find(int key);
- void Delete(int key);
- };
- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
- #include "HashTable.h"
- HashTable::HashTable()
- {
- buffer_size = default_size;
- size = 0;
- arr = new Node[buffer_size];
- for (int i = 0; i < buffer_size; i++) {
- arr[i].freeNode = true;
- }
- }
- HashTable::~HashTable()
- {
- delete[]arr;
- }
- \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
- #pragma once
- //таблица с открытыфм адресом
- class HashTable
- {
- static const int default_size = 17; // нач размер табицы
- constexpr static const double rehash_size = 0.75;//коэф увеличени\ таблицы
- struct Node {
- int key;
- int value; // индекс элемента в массиве с данными по ключу
- bool freeNode; // признак свободного\ зан\того адреса
- };
- Node* arr; // соответственно в масиссиве будут храниться
- // структуры NODE
- int size; // сколько элементов у нас сейчас в массиве
- int buffer_size; // без учета удаленных
- // размер самого массива, сколько памяти выделено на хранение нашей таблицы
- int size_all_non_nullptr; // сколько элементов у нас сейчас в массиве
- HashTable();
- ~HashTable();
- bool Insert(const int value1, int key1);
- void Rehash();
- int Find(int key);
- void Delete(int key);
- };
Advertisement
Add Comment
Please, Sign In to add comment