|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.08.2012, 00:37 | #1 |
Пользователь
Регистрация: 31.01.2009
Сообщений: 26
|
[C++/Delphi] Бесконфликтная хеш-таблица
Здравствуйте!
У меня есть исходный код программы на c++. Нужно этот код переделать в Delphi. Задание Построить бесконфликтную хеш-таблицу для заданного набора текстовых ключей. Число ключей (и размер таблицы) равен 10. В качестве ключей можно взять 10 любых служебных слов языка Паскаль. Для преобразования текстовых ключей в числовые значения использовать суммирование кодов символов текстового ключа: код (End) = код (E) + код (n) + код (d). Преобразование числового кода ключа в значение индекса выполнить с помощью простейшей хеш-функции, которая берет остаток от целочисленного деления кода на размер хеш-таблицы (в задании – 10). Для подсчета индексов ключей написать вспомогательную программу, которая в диалоге многократно запрашивает исходный текстовый ключ (служебное слово языка Паскаль) и подсчитывает значение хеш-функции. Программа должна в цикле вычислять сумму кодов всех символов ключа и брать остаток от деления этой суммы на 10. Если некоторые исходные ключи будут конфликтовать друг с другом, можно изменить исходное слово, например – сменить регистр начальной буквы или всех букв в слове, полностью заменить слово на близкое по значению (End на Stop и.т.д.), ввести какие-либо спецсимволы или придумать другие способы После подбора неконфликтующих ключей написать основную программу, которая должна: • ввести подобранные ключи и расположить их в ячейках хеш-таблицы в соответствии со значением хеш-функции • вывести хеш-таблицу на экран • организовать циклический поиск разных ключей, как имеющихся в таблице (с выводом местоположения), так и отсутствующих: вычислить для ключа значение хеш-функции и сравнить содержимое соответствующей ячейки таблицы с исходным ключом Код:
Заранее спасибо за помощь! |
21.08.2012, 09:47 | #2 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
С хеш-таблицами в дельфи всё печально...
Слышал, что они появились в RAD2010, но подробности не знаю.
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Хеш таблица C++ | Jirogirg | Общие вопросы C/C++ | 19 | 24.08.2012 22:15 |
хеш-таблица с разрешением коллизий связыванием | Ovis | Помощь студентам | 0 | 18.05.2012 00:36 |
Хеш-таблица на основе стеков. Dephi | Satevg | Помощь студентам | 1 | 17.04.2011 23:48 |
хеш-таблица | CHUCKe | Помощь студентам | 2 | 17.11.2010 23:30 |
ХЕШ-таблица | iceman2112 | Общие вопросы C/C++ | 0 | 09.05.2010 13:07 |