Форум программистов, компьютерный форум, киберфорум
Наши страницы

Ключ в хэш-таблице - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти количество чисел в заданном диапазоне, которые имеют 3 одинаковые цифры подряд http://www.cyberforum.ru/cpp-beginners/thread766432.html
Задача: Найти количество чисел (на промежутку от 1 до 999999) , которые имеют минимум 3 одинаковые подряд цифры.
C++ Сортировка пузырьком Всем доброго времени суток. Помогите пожалуйста написать программу сортировки пузырьком в соответствии с данной блок-схемой. http://www.cyberforum.ru/cpp-beginners/thread766428.html
Динамическое выделение памяти C++
Объясните пожалуйста.Не могу понять в чём разница между malloc,calloc/free и new/delete
Определить, есть ли в матрице два одинаковых элемента C++
Помогите решить задачу. Сам новичок в С++ 1. Определить, есть ли в данном двумерном массиве два одинаковых элемента. 2. Поменять местами первый максимальный и последний минимальный элементы. ...
C++ Правильность условия if оператора в цикле wihle http://www.cyberforum.ru/cpp-beginners/thread766400.html
Прошу помочь. Я новичок в програмировании и все проги что пишу получаються методом проб и ошибок, но сути порой не улавливаю. Вот решил написать небольшой консольный псевдо редактор в котором я буду...
C++ Циклическая зависимость классов Доброго времени суток. Возникла такая проблема с программой на С++. All Files : main.cpp GameCycle.h SurfacesManager.h File main.cpp #include "GameCycle.h" подробнее

Показать сообщение отдельно
Igor3D
938 / 536 / 61
Регистрация: 01.10.2012
Сообщений: 2,629
20.01.2013, 11:04
Цитата Сообщение от Saltillo Посмотреть сообщение
А можно код к этому на С/C++ , заранее спасибо)
Ну весь код - там много, а вот классы набросаю

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
template <class Key, class Val>
struct Cell {
 Cell * mNext. * mPrev; // каждая ячейка в двусвязном списке
 unsigned int mHash;      // хеш-значение
 bool mEmpty;               // флаг ячейка пуста
 Key mKey;                    // ключ
 Val mVal;                      // значение
};
 
template <class Key, class Val>
struct HashTable {
 ... // методы
 size_t mCount;
 Cell<Key, Val> * mCell;   // здесь лучше C массив (а не контейнер std)
 Cell<Key, Val> * mFreeList;   // список свободных ячеек
};
Для класса/типа Key должна быть определена ф-ция
C++
1
2
3
unsigned int Hash( const Key & key);
// напр
unsigned int Hash( const int & key) { return key; }
Конструктор HashTable выделяет какое-то число свободных ячеек (напр 16) и связывает их в mFreeList. Далее как обсуждалось выше
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.