procedure TForm1.Button3Click(Sender: TObject);
function SostAtr (obr:Integer;kol:Integer):FindRec;
3.3. Описание переменных:
function Obmen(i:integer;j:integer):Boolean;
p – переменная для перестановки двух элементов массива
function Zameni(x:integer;y:integer):Integer;
i,j – счетчики
procedure ScepOch (l, t: integer);
i – элемент массива для сортировки
procedure TForm1.Button1Click(Sender: TObject);
i – счетчик
procedure TForm1.Button2Click(Sender: TObject);
i – счетчик
procedure TForm1.Button3Click(Sender: TObject);
obr – образец для поиска
i - счетчик
f – номер данного элемента в массиве
function SostAtr (obr:Integer;kol:Integer):FindRec;
j - счетчик
n – количество элементов
v – промежуточная переменная для работы
rez – номер образца в массиве
3.4. Внешний вид формы:
3.5. Результаты выполнения программы:
Количество элементов | Среднее время поиска (мс) |
100 | 5 |
1000 | 7,60 |
3000 | 8 |
5000 | 10 |
10000 | 12 |
Количество элементов | время сортировки (мс) |
10 | 14 |
50 | 16 |
100 | 17 |
200 | 18 |
300 | 20 |
500 | 25 |
1000 | 49 |
2000 | 127 |
3000 | 263 |
5000 | 405 |
6000 | 504 |
7000 | 559 |
8000 | 775 |
9000 | 965 |
10000 | 1068 |
4. Заключение
Поставщики вычислительных машин считают, что в среднем более 25% машинного времени систематически тратится на сортировку. Во многих вычислительных системах на нее уходит больше половины машинного времени. Из этой статистики можно заключить, что либо сортировка имеет много важных применений, либо ею часто пользуются без нужды, либо применяются в основном неэффективные алгоритмы сортировки. По-видимому, каждое из трех предположений содержит долю истины. Во всяком случае ясно, что сортировка заслуживает серьезного изучения с точки зрения ее практического использования.
Но даже если бы сортировка была почти бесполезна, нашлась бы масса других причин заняться ею! Изобретательные алгоритмы сортировки говорят о том, что она и сама по себе интересна как объект исследования. В этой области существует множество увлекательных нерешенных задач наряду с весьма немногими уже решенными.
Делая вывод после изучения сортировки и поиска, можем сказать, что сортировка не достаточно эффективна при значительных размерах массива, т.к. значительное количество ненужных операций негативно влияет на время сортировки. Поиск при исследовании показал хорошие результаты по времени и прост в реализации.
Таким образом, метод сортировки можно рекомендовать при работе с массивами малой и средней величины, т.к. время, необходимое для его написания, не велико, и при работе с большими массивами лучше использовать более эффективные алгоритмы. Метод поиска можно рекомендовать при работе с массивами любого размера, т.к. он прост в реализации и эффективен по времени.
5. Список использованной литературы
1. Д. Кнут «Искусство программирования» 3 том
2. Н. Вирт «Алгоритмы+структуры данных=программы».-М.:Мир.1977
3. Белова Т.М.,Старков Ф.А. «Программирование в Delphi».-КурскГТУ.Курск.2002
4. Фаронов В.В. «Delphi.Программирование на языке высокого уровня».-СПб.:Питер,2006
5. А.Ахо,Дж.Хопкрофт,Дж.Ульман «Построение и анализ вычислительных алгоритмов».-
М.:Мир,1979
6. Фаронов В. «Turbo Pascal.Наиболее полное руководство».-СПб.:БХВ-Петербург,2004
7. Иванов Б.Н. «Дискретная матеметика.Алгоритмы и программы».-М.:Лаборатория базовых знаний,2003
8. Липский В. «Комбинаторика для программистов».-М.:Мир,1988
9. Д.Грин , Д.Кнут «Комбинаторная теория».- М.:Мир,1987
10. Д.Грин , Д.Кнут «математические методы анализа алгоритмов».М.:Мир,1987
11. Дж.Макконнелл «Основы современных алгоритмов».М.:Техносфера,2004
12. Аветисян Р.Д.,Аветисян Д.О. «Теоретические основы информатики»