Помощь - Поиск - Пользователи - Календарь
Полная версия: хеш-таблицы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Shurka
Народ, помогите кто может!!!!!! Вообщем мне нужно сделать программу, которая искала, стирала и прибавляла новые элементы record в хеш-таблице(hash table). Желательно чтобы поиск осуществлялся с помощью division method. Да и решение проблемы collision должно быть включено обязательно. Мне сложно понять что я тут написала, поэтому любая реальная помощь мне очень пригодилась бы.
BlackShadow
Ладно, если Division Method принять за бинарный поиск, то это понятно.
Далее индексирование в таблице по числам или строкам?
И что такое collision?
Ответишь на оба вопроса, тогда скорее всего и помогу.
Shurka
На первый вопрос: по числам, а на второй сложнее:
вообщем это когда хочешь поместить record в кеш-таблицу в соответствуещее для него место, а оно уже занято. Тогда существует по крайней мере 2 способа решения таких collision'ов (не знаю как по-русски). Если я сейчас начну их обьяснять, то никто ничего не поймет, поэтому вот на этой странице http://algolist.manual.ru/ds/s_has.php есть по крайней мере рисунок решения этой проблемы или здесь все еще лучше иллюстрировано: http://www.cs.tpu.ee/~inga/alg_andm/hash.pdf
BlackShadow
ээээ.... Я сначала не про это подумал sad.gif
Это явно займёт более 10 минут smile.gif посмотрю дома, как с работы вернусь. Под вечер чего-нибудь и сочиню.
BlackShadow
Пардон, что так поздно - 10 дней I-Net'а не было. Я чуть с ума не сошёл. Сегодня. пока просматривал 600 с лишним месаг.
А ещё пардон, что на C#, но, я думаю, перевести на любой другой язык не проблема - решение-то банальным оказалось...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.