Сравнение разработанных сортировки



 

Для сравнения эффективности методов сортировок определить время ? в данном оно является показателем эффективности. таблице 3 указано время соответствующее определенному элементов массива, экспериментально для метода сортировки.

 

3.3 Время сортировки

элементов массива сортировки для простых вставок, Время сортировки метода пузырька,
5 237 245
10 248 267
15 253 272
20 259 294
30 277 311
40 279 320
64 346 368
128 659 702
256 876 912
512 910 975
1024 953 1034

 

На основе таблицы построены для экспериментального эффективности методов .

Рисунок 3.12 Графики времени сортировки количества элементов массива

 

на данные можно сделать , что общее сортировки для простых вставок , чем для пузырька. Следовательно, методом простых является более , чем сортировка пузырька.


Заключение

 

ходе курсовой работы проведен обзор алгоритмов сортировки, том числе оценка эффективности. Был сделан , что методы сортировок (сортировки копирование массива), эффективны в , чем методы сортировок. Причем эффективная из сортировок менее , чем худшая производительности из сложных .

Также было теоретическое сравнение алгоритмов сортировок, в рамках проекта, построены графики. В теоретического сравнения выявлено, что методом вставок сортировки методом , благодаря меньшему сравнений ключей меньшему количеству пересылок.

разработаны функции методом простых (insert) и пузырька (bubble). функции интегрированы разработанное приложение, с которого можно массив с количеством элементов, его любым рассмотренных в курсовом методом сортировки узнать время сортировки .

С помощью приложения был экспериментальный анализ методом простых и методом , подтвердивший результаты сравнения эффективности сортировок. По экспериментального анализа среднем сортировка методом вставок занимает времени, чем методом пузырька. этого можно , что сортировка простых вставок , чем сортировка пузырька.


Список источников

 

1. Бадд . Объектно-ориентированноепрограммирование действии. СПб.: , 2014.

2. 2.Буч Г. -ориентированныйанализ и с примерами на C++. .: Бином; СПб.: диалект, 2013.

3. 3.Вирт . Алгоритмы и данных. М.: , 2010.

4. 4.Дал У., Э., Хоор . Структурное программирование. .: Мир, 2013.

5. 5.Иванова .С., Ничушкина .Н., Пугачев .К. Объектно-про­ граммирование. М.: -во МГТУ . Н.Э. , 2011.

6. 6.Кормен Т., Ч., Ривест . Алгоритмы: построение анализ. М.: , 2011.

7. 7.Майерс Г. тестирования программ. .: Мир, 2013.

8. 8.Фаронов .В. Турбо-.ОсновыТурбо-Паскаля..: «МВТУ - ФЕСТО », 2013.

9. 9.Хьюз Дэю., Дэю. Структурный к программированию. .: Мир, 2013.

10.  «Программирование основы алгоритмизации» — В. . Давыдов — изд. « школа», 2015.

11. «Основы и программирования» — . Л. Голицына, . И. Попов — . «ФОРУМ-ИНФРА-», 2016.

12. «Программирование на высокого уровня» — . А. Павловская — . «Питер», 2014.

13. Петзольд . Программирование под 95. В двух : BHV – Санкт - , 2012, silt.

14. Ричард .Линкер, Том . Программирование для 98. Библия разработчика. “ ” – Москва, 2013.-864 с.: .- Парал. тит. . Уч.пос.

15. Либерти. С++ 21 день. ”Вильямс” - , 2012.-816 с.: ил. - .тит. англ.

16. Дж. Круглински. С++. “Русская ” – Москва, 2013.- 696 с.: .

17. Кэйт Грегори. Visual C++. “” – Москва, 2011.-864 с.: .. - Парал.тит. ., уч. пос.

18.

19. Павловская Т. . «С#. Программирование языке высокого » Питер, 2014 год, 432 .

20. Грызлов В.., Грызлова Т.. Турбо Паскаль 7.0. — .: ДМК, 2014.

 


Приложение

 

( рабочего кода приложения)

#pragma

#include < iostream. >

# include < time. >

void insert ( *a, int ) // ФУНКЦИЯ ВСТАВОК

{

i, j, ; // объявление переменных

(i=1; i< ; i++)

{

t= [i]; // запоминается для вставки

(j=i-1; > =0 & & t<a []; j--) // ищем для вставки

[j+1] =a []; // сдвиг на позицию

a [+1] =t;

}

}

void (int *a, n) // функция

{

int i, , t; // объявление

for (i = 0; <= n-1; i++)

{

(j = 0; j <= -2-i; j++)

{

(a [j] > [j+1]) // сравниваем соседних элементов

{

= a [j]; // меняем их местами это требуется

[j] = a [+1];

a [j+1] = ;

}

}

}

}

int main ( argc, char* [])

{

char b;

n;

typedef clock_t; // данных времени

_t t; // — время выполнения

char str1 [100] = « количество элементов сортировки: «;

char [100];

char str3 [100];

(str1, buf);

< <buf<<endl;

> >n;

int* =new int; // , указание кол- элементов

randomize (); // заполнение массива

for ( i=0; i< =; i++)

a [] =random (50) — 30;

strcpy (,"Первичный массив: «);

(str1, buf);

< <buf<<endl;

(int i=0; < n; i++)

{

< <" a ["< <i<<"] ="< < [i] < <' ';

if (! ((+1)%5)) cout < < «n»; // выводится по 5 в строке

};

< <endl;

strcpy (,"Выберите тип : «);

strcpy (str2,"1. методом простых ");

strcpy (str3,"2. методом пузырька «);

(str1, buf);

(str2, buf1);

(str3, buf2);

< <buf<<endl

< <<<endl

< <buf2<<;

cin> >b;

(str1,"Отсортированные : «);

CharToOem (str1, );

cout< <buf<<;

if (b='1')

{

(a, n); // функции сортировки

}

(b='2')

{

buble (, n); // вызов

}

for (int =0; i< n; ++)

{

cout< <" a ["< <<<"] ="< <a [i] < <' ';

(! ((i+1)%5)) cout < < «»;

}

cout< <endl; // времени выполнения

strcpy (str1," сортировки в : «);

CharToOem (str1, );

cout< <buf<<;

t= (clock () /_PER_SEC) * 60; // clock () возвращает исп программы

< <t; // как типа clock_ объявленного ранее // значение можно в секунды

// на определенную библиотеке time. h CLOCKS_PER_

getchar ();

getchar ();

0; }

 


Дата добавления: 2018-04-15; просмотров: 299; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!