ЗМІСТ
ВСТУП
ГЛАВА 1. ТЕОРЕТИЧНИЙ РОЗДІЛ
.1 Актуальність
.2 Загальні основи
РОЗДІЛ 2. ПРОЕКТНИЙ РОЗДІЛ
.1 Принцип побудови хеш - функцій
.2 Застосування хешування
РОЗДІЛ 3. ПРОГРАМНА РЕАЛІЗАЦІЯ
.1 Організація структури даних
.2 Реалізація функцій структури
ГЛАВА 4. ЕКСПЕРИМЕНТАЛЬНИЙ РОЗДІЛ
.1 Керівництво користувача
ВИСНОВОК
СПИСОК ЛІТЕРАТУРИ
ВСТУП
З хешуванням ми стикаємося чи не на кожному кроці: під час роботи з браузером (список Web-посилань), текстовим редактором і перекладачем (словник), мовами скриптів (Perl, Python, PHP і ін) , компілятором (таблиця символів). За словами Брайана Керніган, це В«один з найбільших винаходів інформатикиВ». Заглядаючи в адресну книгу, енциклопедію, алфавітний покажчик, ми навіть не замислюємося, що впорядкування по алфавіту є не чим іншим, як хешуванням. p align="justify"> Хешування є розбиття множини ключів (однозначно характеризують елементи зберігання і представлених, як правило, у вигляді текстових рядків або чисел) на непересічні підмножини (набори елементів), що володіють певним властивістю. Це властивість описується функцією хешування, або хеш-функцією, і називається хеш-адресою. Рішення зворотного завдання покладено на хеш-структури (хеш-таблиці): по хеш-адресою вони забезпечують швидкий доступ до потрібного елементу. В ідеалі для задач пошуку хеш-адреса має бути унікальним, щоб за одне звернення отримати доступ до елементу, що характеризується заданим ключем (ідеальна хеш-функція). Однак, на практиці ідеал доводиться замінювати компромісом і виходити з того, що отримувані набори з однаковим хеш-адресою містять більше одного елемента. p align="justify"> Метою даної роботи, є реалізація методу і розробка програмного продукту, що виключає колізію.
ГЛАВА 1. ТЕОРЕТИЧНИЙ РОЗДІЛ
1.1 Актуальність
Світ накрила хвиля інформації. Головне при роботі з нею - швидкий пошук з подальшою вибіркою. Інформація зберігається в базах даних, і бази даних стоять зараз майже на кожному комп'ютері. Зазвичай бази складаються з таблиць. Розглянемо типову структуру таблиці в реляційної базі даних. Всі поля, що входять в таблицю, можна розбити на три групи: системні поля, поля найменування, і поля даних. p align="justify"> Системні поля - це ключі. У них входять первинний ключ (лічильник) для зв'язку з підлеглими таблицями і вторинні ключі для зв'язку з головними таблицями (якщо дана таблиця є підлеглою). p align="justify"> Поля найменування - це ті поля, по яких користувач може ідентифікувати описаний в таблиці об'єкт в ряду собі подібних. Для запобігання дублювання записів (тобто появи В«двійниківВ») необхідно забезпечувати унікальність записів. Типи ...