Сортировка матрицы по убыванию суммы значений ее элементов, страница 6

    }

                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. Выводы:

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