Курсовая работа: Хэш поиск

function AddFirst(aKey:string):Boolean - добавлениевначалосписка. Возвращает true при успешном добавлении.

functionAddLast(aKey:string):boolean - добавление в конец списка. Возвращает true при успешном добавлении.

functionGetHead:TItem - дать заголовка

Класс TMas является контейнерным классом. Имеет в своем составе 1 свойство – объявление 10ти элементного массива типа TList. Иначе говоря объявляем массив списков. Описание методов класса:

ConstructorCreate(aKey:string) - создание масива указателей на списков

functionHeshFunction(aKey:string):integer;virtual - HESH-функция с возможностью переопределения. Возвращает ячейку массива.

function Add(aKey:string;found:byte):byte – Функциядобавления. Типы добавления: Found:0- в начало списка,1-в конец списка. Возвращает: 0 - без конфликтное добавление, иначе ячейку j

functionSearch(aKey:string;varaCount:integer):string – Функция поиска заданного элемента Hesh-таблицы. aCount – количество сравнений. Возвращает: ‘0’ – элемент найден, иначе сам ключ.

procedureDeleteAll - удаление всей структуры

ProcedureSaveHesh(FileName:String) - сохранение контейнера в текстовом файле с именем файла

ProcedureLoadHesh(FileName:String)- загрузка контейнера из текстового файла

ProcedureExtract(varaIndex:integer;varaCur:TItem) – Процедура извлечения матрицы элементов для использования в DemoUnit. Используется для вывода структуры на экран. Вывод :aIndex- текущий индекс массива, aCur- текущий элемент линейного списка

UML – диаграмма взаимодействия классов:

TItem
Элемент списка
Next
Key


TList
Линейный список
Head

TMas
Контейнер
Mas:Array[0..10]ofTList

4. Описание пользовательского интерфейса.

В данной программе используются следующие компоненты Label, Edit, StringGrid, Menu, BitBtn, RadioGroup, StatusBar.

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

Метки(Label) предназначены для размещения на экране текстовой информации, содержащей различные пояснения, названия, заголовки и т.д.

Строка ввода Edit позволяет вводить и редактировать одну строку текста.

Таблица StringGrid представляет собой сетку в которой содержаться строки и столбцы.

RadioGroup – это набор зависимых между собой переключателей.

Кнопка Button: основное назначение кнопки – формирование события при нажатии на неё. Кнопка может быть размещена в любом месте формы, где есть необходимость выполнить какие-либо действия при её нажатии.

Кнопка BitBtn: на этой кнопке в отличие от Button можно размещать значки.

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

Поиск: задаем искомый ключ в редактор ввода Edit, нажимаем кнопку«Найти», выдается сообщение об успешности поиска, если элемент найден, то в панели задач указывается количество сравнений .

К-во Просмотров: 885
Бесплатно скачать Курсовая работа: Хэш поиск