MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Алгоритми сортування

Название:Алгоритми сортування
Просмотров:217
Раздел:Информатика, программирование
Ссылка:Скачать(151 KB)
Описание: Лабораторна робота   Вивчення алгоритмів сортування   Мета: Ознайомитися із простими алгоритмами сортування та навчитися їх програмувати. Засвоїти базові умови тестування програм та вимірювання їх е

Университетская электронная библиотека.
www.infoliolib.info

Часть полного текста документа:

Лабораторна робота

 

Вивчення алгоритмів сортування

 

Мета: Ознайомитися із простими алгоритмами сортування та навчитися їх програмувати. Засвоїти базові умови тестування програм та вимірювання їх ефективності.

Хід роботи

Сортування вставками

Сортування вставками - простий алгоритм сортування на основі порівнянь. На великих масивах є значно менш ефективним за такі алгоритми, як швидке сортування, пірамідальне сортування та сортування злиттям. Однак, має цілу низку переваг:

простота у реалізації

ефективний (за звичай) на маленьких масивах

ефективний при сортуванні масивів, дані в яких вже непогано відсортовані: продуктивність рівна O (n + d), де d - кількість інверсій

на практиці ефективніший за більшість інших квадратичних алгоритмів (O (n2)), як то сортування вибором та сортування бульбашкою: його швидкодія рівна n2/4, і в найкращому випадку є лінійною є стабільним алгоритмом

Код програми сортування вставками:

#include <stdio. h>

#include <conio. h>

#include <stdlib. h>

#include <time. h>

 // Insertion-------------------------------------------------------------

void Insertion (int *arr, int n)

{

int i,j,buf;

clock_t start, end;

FILE *rez;

start = clock ();

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

{

buf=* (arr+i);

for (j=i-1; j>=0 && * (arr+j) >buf; j--)

* (arr+j+1) =* (arr+j);

* (arr+j+1) =buf;

}

end = clock ();

printf ("The time was:%f s\n", (end - start) / CLK_TCK);

rez=fopen ("rezult. txt","wt");

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

fprintf (rez,"%d\n",* (arr+i));

fclose (rez);

}

 // ---------------------------------------------------------------------

void main ()

{

FILE *f;

int *X, N;

clock_t start, end;

f=fopen ("massiv. txt","rt");

N=0;

while (! feof (f))

{

fscanf (f,"%d",X+N);

N++;

}

fclose (f);

clrscr ();

Insertion (X,N);

getch ();

}

Результат роботи сортування вставками Довжина послідовності Випадкові Зростає Спадає 312 17 927 85 10009 середнє Час 0 0 0 0 0 0 0 0 10 Пересилан-ня 38 37 41 35 35 37,2 18 63 Порівняння 29 28 32 26 26 28,2 9 54 Час 0 0 0 0 0 0 0 0 50 Пересилан-ня 816 647 691 679 668 700,2 98 1323 Порівняння 767 598 642 630 619 651,2 49 1274 Час 0 0 0 0 0 0 0 0 200 Пересилан-ня 10003 11251 9802 10387 10455 10379,6 398 20298 Порівняння 9804 11052 9603 10188 10256 10180,6 199 20099 Час 0 0 0 0 0 0 0 0 1000 Пересилан-ня 255877 250330 249604 249928 252295 251606,8 1998 501498 Порівняння 254879 249331 248605 248929 251296 250608 999 500499 Час 0,054 0,055 0,054 0,054 0,55 0,054 0 0,1 5000 Пересилан-ня 6302053 6183921 6229604 6391053 6282323 6277791 9998 12507498 Порівняння 6297054 6178922 6224605 6386054 6277324 6272792 4999 12502499 Час 0,21 0,21 0,21 0,21 0,22 0,21 0 0,44 10000 Пересилан-ня 25166644 24940616 24897941 24822544 24963312 24958211 19998 50014998 Порівняння 25156645 24930617 24887942 24812545 24953313 24948212 9999 50004999

Час виконання:

Кількість порівняннь:


Кількість пересилань:

Сортування злиттям

Сортування злиттям - алгоритм сортування, в основі якого лежить принцип Розділяй та володарюй. В основі цього способу сортування лежить злиття двох упорядкованих ділянок масиву в одну впорядковану ділянку іншого масиву. Злиття двох упорядкованих послідовностей можна порівняти з перебудовою двох колон солдатів, вишикуваних за зростом, в одну, де вони також розташовуються за зростом. ............





Нет комментариев.



Оставить комментарий:

Ваше Имя:
Email:
Антибот:  
Ваш комментарий:  



Похожие работы:

Название:Сортування даних - пірамідальне сортування
Просмотров:275
Описание: Зміст Зміст Постановка задачі Теоретичні відомості Вхідні – вихідні дані Математичний розв’язок Схема алгоритму програми Алгоритм процедури введення даних Алгоритм процедури виведення результа

Название:Обладнання для інспектування, сортування та калібрування плодів і овочів
Просмотров:166
Описание: Доповідь на тему: "ОБЛАДНАННЯ ДЛЯ ІНСПЕКТУВАННЯ, СОРТУВАННЯ ТА КАЛІБРУВАННЯ ПЛОДІВ І ОВОЧІВ" У виробництві консервованої продукції можна використовувати тільки сировину, яка в

Название:Програма для сортування даних методом піраміди
Просмотров:265
Описание: Міністерство освіти та науки України Кіровоградський Державний Технічний університет Кафедра програмного забезпечення               Курсовий проект з дисципліни “Програмування

Название:Кримінальна відповідальність за незаконне виробництво, виготовлення, придбання, зберігання, перевезення, пересилання чи збут наркотичних засобів, психотропних речовин або їх аналогів в теорії та судовій практиці
Просмотров:119
Описание: ЗМІСТ Вступ …………………………………………………………………………… 3 1. Історія розвитку карно-правової заборони щодо незаконного обігу наркотичних засобів, психотропних речовин або їх аналогів ……………... 2. Понятт

Название:Порівняльний аналіз ефективності та складності швидких алгоритмів сортування масивів
Просмотров:140
Описание: Міністерство освіти і науки України Курсова робота на тему: "Порівняльний аналіз ефективності та складності швидких алгоритмів сортування масивів" Зміст   Вступ Р

 
     

Вечно с вами © MaterStudiorum.ru