И программирование сортировки методом вставок



 

Алгоритм методом простых рассмотрен в 2.2 курсового проекта. того, чтобы данный алгоритм представим его в виде -схемы для наглядного отображения функционирования:

i, — счетчики;

t — в которой вставляемый элемент;

— массив элементов;

— количество элементов массиве а;

Блок- 1. Алгоритм сортировки простых вставок

 

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

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

итерации элемент неупорядоченной части запоминается переменной t, после в теле задается еще цикл с , в котором поиск места подстановки элемента упорядоченную часть. Осуществляется элементов начиная нулевого в упорядоченной , так как упорядочивается по проверяется условие ли выбранный элемент элементов из части. Так подобный перебор каждый раз с нулевого упорядоченной части, выполняется декремент счетчика . Если найдено для подстановки, условиям, то вставка и элементов упорядоченной .

На основе блок-схемы разработать функцию, сортировку массива простых вставок языке программирования C++:

insert (int *, int n) // ВСТАВОК

{

int , j, t; // переменных

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

{

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

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

a [+1] =a [j]; // на одну

a [j+1] =;

}

}

 

Разработка и алгоритма сортировки пузырька

 

Алгоритм массива методом описан в 2. 3, для наглядного принципа действия его в блок схемы.

этом используем из предыдущей -схемы, описывающей сортировки методом вставок.

Первый алгоритма такой как и методе простых вставок? переменные счетчики , j и 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] = ;

}

}

}

}

 

Тестирование разработанных сортировки методом вставок и пузырька

 

В работы над проектом было 2 функции: функция массива методом вставок, и сортировки массива пузырька. Так в разработанной использована функция времени работы clock (), содержащаяся библиотеке time. h. формируется автоматически помощью встроенной функции (), пользователю нужно задать число в массиве выбрать метод сортировки. чего будет сортировка выбранным , выведен на упорядоченный массив время сортировки в .

Для тестирования программы совершим прогонов с значениями. В отчета о программы приведены :

Рисунок 3.11 Скриншот программы, сортировка простых вставок методом пузырька

 

видно на программа успешно сортировку методом вставок и пузырька и время сортировки.

 


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

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






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