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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
KerBIT
0 / 0 / 0
Регистрация: 27.11.2008
Сообщений: 10
#1

Хэш-таблицы - C++

10.05.2011, 20:05. Просмотров 581. Ответов 1
Метки нет (Все метки)

Добрый вечер! Задание такое:
Способ вычисления адреса по ключу - расщепление ключа 2

Метод заключается в переводе всех символов ключа во внутренний ASCII код, разбиении на разряды и суммировании. В нашем случае – суммирование 1 и (2+3) разрядов.
Keys=S1S2…Sk (Si – символ)
Keyd=ord(S1) + ord(S2) + … + ord(Sk) (ord(Sk) – внутренний код символа)
Расщепление:
(Keys) = d1d2+d3
(Keyd) = d1d2d3
Например 387 --> 38+7 = 45

Если адрес получился больше адресного пространства, то берем остаток от деления на n; а если адреса совпали, то переходим к обработке синонимов.

Метод обработки коллизий - метод открытой адресации.
Требования ПО:
--- максимальное количество данных в таблице n=20
--- каждый ключ содержит от 1 до 6 символов
--- работа с ПО лаб3:
ввод по одному ключей и произвольное чередование следующих режимов работы:
1. добавить (записать) ключ в хэш-таблицу (контроль и выдача сообщения, когда таблица заполнена или такой ключ уже есть);
2. удалить ключ из таблицы (если ключа нет, то сообщение);
3. найти ключ в таблице (если ключа нет, то сообщение);
--- вывод в процессе работы с ПО лаб3:
выводить в файл или на экран ключ его хэш-адрес1, хэш-адрес2 и окончательный адрес ключа в таблице.

Заранее спасибо!

p.s. есть похожая тема но там расщепление другое(одногрупник делал тему другую), просьба помочь с этим расщеплением.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2011, 20:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Хэш-таблицы (C++):

ХЭШ ТАБЛИЦЫ НА С++ - C++
всем привет, кто-нить знает что-нибудь по вот такой задаче (цитирую условие): "Реализовать и протестировать конкретный класс динамической...

ХЭШ таблицы на С++ - C++
Всем привет, кто-нить знает что-нибудь по вот такой задаче (цитирую условие): "Реализовать и протестировать конкретный класс динамической...

Создание хэш таблицы - C++
суть проблемы в том, что когда я создал талицу, в самом методе билд если её вывести то все данные верны, но если выводить таблицу функцией...

Сохранение данных хэш таблицы - C++
Здравствуйте. Имеется хеш таблица с размером массива 10 000. В таблицу периодически заносятся данные. Как сохранять данные при выходе из...

Улучшить скорость работы хэш-таблицы - C++
Всем привет! Есть корректно рабочий код работы с хэш-таблицей двумя хэш-функциями: деления и умножения (избегаю коллизий методом цепочки)....

Квадратичная фунция для хэш-таблицы - C++
Добрый день! Подскажите, что тут c1, c2, h'(key)? Задание прикрепил картинкой.. А ниже функция, которая дана в задании.. int...

1
KerBIT
0 / 0 / 0
Регистрация: 27.11.2008
Сообщений: 10
12.05.2011, 17:36  [ТС] #2
хелп...знает кто? если все четко будет работать и главное правильно-то будет оплата работы
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2011, 17:36
Привет! Вот еще темы с ответами:

Нужен словарь, реализованный при помощи закрытой хэш-таблицы - C++
Ребят помогите пожалуйста с кодом, нужен словарь, реализованный при помощи закрытой хэш-таблицы

Описать класс "хэш-таблица", используя unordered_set и заданную хэш-функцию - C++
Здравствуйте. Есть класс объектов и ключ сравнения: #pragma once #include <iostream> #include <vector> #include <list> #include...

Хэш таблица - C++
Подскажите, пожалуйста, как сделать хэш-таблицу в которой у каждого элемента есть шесть полей.(например Имя фамилия возраст...). Что бы...

Хэш-таблица - C++
Задание реализовать динамическую хеш-таблицу с открытой адресацией для хранения строк (операции вставки и поиска). Таблица должна...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru