- 1
- 2
- 3
- 4
- 5
- . . .
- последняя »
уменьшает количество проверяемых записей отдо(где- количество элементом в массиве), то один шаг интерполяционного поиска уменьшает это количество до(если ключи распределены в таблице случайным образом). В результате интерполяционный поиск требует в среднемшагов для уменьшения диапазона проверки отдо 2.
2.
Описание программы Программа состоит из основной функции main() и пяти функций, вызываемых в main(), в которых реализованы:
· алгоритм последовательного поиска f_seq_search(int *, int, int);
· алгоритма бинарного поиска f_bin_search(int *, int, int);
· алгоритм интерполяционного поиска f_inpol_search(int *, int, int);
· меню выбора your_choice();
· сортировка массива данных order_arr(int *, int).
Программа содержит стандартные функции языка С, описанные в бибиотеках: и . Ниже перечислены и описаны стандартные функции использованные в программе из соответствующих библиотек.
Функции из библиотеки :
rand() - функция генерирует псевдо случайное число в диапазоне от 0 до RAND_MAX не меньше 32767.
atoi() - функция для приведении (конвертации) строки в числовой вид.
malloc() - функция для выделения динамической памяти из кучи.
free() - функция возвращает в динамически распределяемую область памяти блок памяти, адресуемый указателем.
Функции из библиотеки :
gets() - gets(s) - функция, которая считывает строку s из стандартного потока до появления символа перевода строки и хранит их в своем аргументе.() - функция записывает в стандартный поток stdout (стандартный выходной поток данных) значения аргументов из заданного списка аргументов в соответствии со строкой форматирования, адресуемой параметром format.() - функция для ввода данных общего назначения, которая читает поток stdin и сохраняет информацию в переменных, перечисленных в списке аргументов.
puts() - функция, которая записывает строку в стандартный поток, добавляя в конец строки символ '\n', в случае удачного завершения возвращает значение больше или равное 0 и отрицательное значение ( EOF = -1 ) в случае ошибки. .1 Описание функции main() Функция main() является основной функцией программы, алгоритм которой представлен на рисунке 1.
Алгоритм программы в следующем:
1. Задается размер одномерного массива данных с клавиатуры.
. Выделяется динамическая память для хранения данных массива. Если динамическая память не выделилась, тогда происходит выход из программы.
. Массив заполняется псевдослучайными значениями с помощью функции rand().
. Вызывается функция сортировки order_arr(int *, int), в которой передается указатель на массив и его длина.
.Вводится ключ с клавиатуры для поиска его в массиве данных с помощью одного из методов поиска.
.Управления программы переходит в бесконечный цикл и вызывается функция меню выбора your_choise(), с помощью которой, в случае необходимости, обеспечивается выход из программы.
.Значение полученное с помощью функции your_choise() записывается в переменную menu и затем проверяется на совпадение теле цикла switch.
.При совпадении значения переменной menu с цифрой 1, вызывается функция последовательного поиска ключа в массиве f_seq_search(int *, int, int), в которую передаются: указатель на массив, длина массива, ключ поиска.
. Результат выполнения функции записывается в переменную res.
. Если ключ найден в массиве, то на экран выводится значение ключа и его позиция в массиве.
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя »
Похожие работы
Тема: Управление интерфейсом программы 1С при помощи OLE |
Предмет/Тип: Отсутствует (Курсовая работа (т)) |
Тема: Защита информации при помощи антивирусной программы Panda |
Предмет/Тип: Информационная безопасность (Диплом) |
Тема: Разработка программы при помощи языка низкого уровня ассемблер |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Курсовая работа (т)) |
Тема: Разработка и проектирование логических схем при помощи программы ORCAD |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Курсовая работа (т)) |
Тема: Моделирование электрических цепей при помощи программы Micro-Cap |
Предмет/Тип: Другое (Контрольная работа) |
Интересная статья: Быстрое написание курсовой работы