}
for(i = 0; i < counter_quick2 ; i ++)
{
for(j = 0; j < x ; j ++ )
{
cout << " " << matrix_quick2[i][j] << " ";
}
cout << endl;
}
cout << "\n";
cout << "counter = " << counter_quicksort1 + counter_quicksort2 << " ";
cout << endl;
cout << endl;
return 0;
}
3. Входные данные :
Enter number of lines in matrix: 5
Enter number of columns in matrix: 5
4. Выходные данные:
Enter number of lines in matrix: 5
Enter number of columns in matrix: 5
*** Matrix ***
6 0 6 6 8
0 8 8 1 2
7 2 5 8 6
9 8 6 1 2
5 2 8 5 9
*** selection sort ***
5 2 8 5 9
7 2 5 8 6
9 8 6 1 2
6 0 6 6 8
0 8 8 1 2
counter = 6
*** insertion sort ***
5 2 8 5 9
7 2 5 8 6
6 0 6 6 8
9 8 6 1 2
0 8 8 1 2
counter = 7
*** bubble sort ***
5 2 8 5 9
7 2 5 8 6
6 0 6 6 8
9 8 6 1 2
0 8 8 1 2
counter = 7
*** Shellk sort ***
5 2 8 5 9
7 2 5 8 6
6 0 6 6 8
9 8 6 1 2
0 8 8 1 2
counter = 7
*** quick sort ***
5 2 8 5 9
7 2 5 8 6
9 8 6 1 2
6 0 6 6 8
0 8 8 1 2
counter = 3
Press any key to continue
5. Выводы:
В результате была написана программа, генерирующая двумерный массив с заданным количеством строк и столбцов, и упорядочивающая строки по суммам значений элементов в этих строках. Массив упорядочивается пятью способами: методом пузырька, выбора, вставки, Шелла и быстрой сортировки. Для каждого из методов выводиться количество перестановок элементов для того, чтобы можно было сравнивать их эффективность. При больших размерах матрицы очевидно, что самой эффективной является быстрая сортировка.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.