Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Хеш пошук

Реферат Хеш пошук





GetHead: TItem - Дати заголовка

Клас TMas є контейнерним класом. Має у своєму складі 1 властивість - оголошення 10ти елементного масиву типу TList. Інакше кажучи оголошуємо масив списків. Опис методів класу:

Constructor Create (aKey: string) - Створення масива покажчиків на списків

function HeshFunction (aKey: string): integer; virtual - HESH-функція з можливістю перевизначення. Повертає клітинку масиву. p> function Add (aKey: string; found: byte): byte - Функція додавання. Типи додавання: Found: 0 - в початок списку ,1-в кінець списку. Повертає: 0 - без конфліктне додавання, інакше клітинку j

function Search (aKey: string; var aCount: integer): string - Функція пошуку заданого елемента Hesh-таблиці. aCount - Кількість порівнянь. Повертає: '0 '- елемент знайдений, інакше сам ключ. p> procedure DeleteAll - Видалення всієї структури

Procedure SaveHesh (FileName: String) - Збереження контейнера в текстовому файлі з іменем файлу

Procedure LoadHesh (FileName: String) - завантаження контейнера з текстового файлу

Procedure Extract (var aIndex: integer; var aCur: TItem) - Процедура вилучення матриці елементів для використання в Demo Unit. Використовується для виведення структури на екран. Висновок: aIndex - поточний індекс масиву, aCur - поточний елемент лінійного списку

UML - діаграма взаємодії класів:



TItem

Елемент списку

Next

Key









TList

Лінійний список

Head





В 


TMas

Контейнер

Mas: Array [0 .. 10] of TList





4. Опис інтерфейсу користувача.


У даній програмі використовуються наступні компоненти Label, Edit, StringGrid, Menu, BitBtn, RadioGroup, StatusBar.

Текстовой компоненти Label, Edit, StringGrid:

Мітки (Label) призначені для розміщення на екрані текстової інформації, яка містить різні пояснення, назви, заголовки і т.д.

Рядок введення Edit дозволяє вводити і редагувати один рядок тексту.

Таблиця StringGrid являє собою сітку в якій міститися рядки і стовпці.

RadioGroup - це набір залежних між собою перемикачів.

Кнопка Button: основне призначення кнопки - формування події при натисненні на неї. Кнопка може бути розміщена в будь-якому місці форми, де є необхідність виконати будь-які дії при її натисканні.

Кнопка BitBtn: на цій кнопці на відміну від Button можна розміщувати значки.

Додавання ключа: вводимо в редактор Edit ключ, натискаємо кнопку В«ДодатиВ», залежно від значення ключа отримуємо результат у вигляді повідомлення MessageDlg:

В 

В 





В 

В 

Пошук: задаємо шуканий ключ в редактор введення Edit, натискаємо кнопку В«ЗнайтиВ», видається повідомлення про успішність пошуку, якщо елемент знайдений, то в панелі завдань вказується кількість порівнянь.


В 
В 

1. Лістинг і опис всіх класів бібліотеки на DP.


6.1. Опис усіх класів.


unit ClassHeshProg;


interface

type

TItem = class {клас-елемент списку}

private

key: string;

next: TItem;

public

Constructor Create (aNext: TItem; aKey: string) ;//створення 1 елемента

function Getnext: TItem ;//дати адресу на слід. елемент

procedure SetNext (aNext: TItem) ;//змін. адреса

Function GetKey: string ;//дати ключ

end;


{***********************************}


TList = class {Клас списку}

private

Head: TItem ;//заголовок списку

public

constructor Create (aKey: string) ;//створення списку

function AddFirst (aKey: string): boolean ;//додавання перед заголовком

function AddLast (aKey: string): boolean ;//додавання після заголовка

function GetHead: TItem ;//дати заголовка

end;

{***********************************}

TMas = class {Клас-контейнер масиву списків}

private

mas: array [1 .. 10] of TList;

public

Constructor Create (aKey: string) ;//створення масиву покажчиків списків

function HeshFunction ...


Назад | сторінка 4 з 7 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Об'єктна реалізація поліморфного контейнера на основі лінійного списку
  • Реферат на тему: The stylistic function of the English article
  • Реферат на тему: Organizational Function of Intonation in English and Ukrainian Languages
  • Реферат на тему: Розробка програм по створенню бази даних приладів і додавання першого рядка ...
  • Реферат на тему: Розробка програми для зберігання і виведення списку співробітників і їхні з ...