Cloud DB
Загрузка...
Поиск...
Не найдено
Файл hashtable.h
#include "uItemPointerData.h"

См. исходные тексты.

Классы

struct  tHashTableItem
 
struct  tHashTable
 

Макросы

#define HASHTABLE_SIZE   4096
 
#define HASHTABLE_POW   37
 

Определения типов

typedef struct tHashTableItem tHashTableItem
 
typedef struct tHashTable tHashTable
 

Функции

int hashFunction (const char *)
 
void hashTableSet (tHashTable *table, const char *key, uItemPointerData *value)
 
uItemPointerDatahashTableGet (tHashTable *table, const char *key)
 
void hashTableDelete (tHashTable *table, const char *key)
 
void hashTableFree (tHashTable *table)
 

Подробное описание

Имплементация классического hashtable

Функции

◆ hashFunction()

int hashFunction ( const char * string)

полиномиальная функция для расчета хэша

Необходимо сделать
изменить на более эффективную хэш-функцию

◆ hashTableDelete()

void hashTableDelete ( tHashTable * table,
const char * key )

удалить значение по ключу

Аргументы
[in]tableуказатель на hashtable
[in]keyключ (строка)

◆ hashTableFree()

void hashTableFree ( tHashTable * table)

Освобождает память переданной таблицы

Аргументы
[out]tableтаблица для очищения

◆ hashTableGet()

uItemPointerData * hashTableGet ( tHashTable * table,
const char * key )

Задать значение по ключу

Аргументы
[in]tableуказатель на hashtable
[in]keyключ (строка)
Возвращает
значение если есть, иначе null

◆ hashTableSet()

void hashTableSet ( tHashTable * table,
const char * key,
uItemPointerData * value )

Задать значение по ключу

Аргументы
[out]tableуказатель на hashtable
[in]keyключ (строка)
[in]valueзначение