Форум программистов, компьютерный форум CyberForum.ru

Количество перестановок при сортировке массива - C++

Восстановить пароль Регистрация
 
MAQSA
2 / 2 / 0
Регистрация: 18.04.2010
Сообщений: 119
23.05.2010, 23:05     Количество перестановок при сортировке массива #1
Как вывести число количества перестановок после сортировки массива, допустим выбору?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2010, 23:05     Количество перестановок при сортировке массива
Посмотрите здесь:

C++ Использование массива индексов при сортировке
функция qsort при сортировке массива структур C++
C++ Выполнить сортировку массива по убыванию и проконтролировать ее результат. Произвести подсчет перестановок при сортировке
Выполнить сортировку массива по убыванию и проконтролировать ее результат. Произвести подсчет перестановок при сортировке C++
C++ Подсчитать Количество перестановок при сортировке массива по возрастанию
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
23.05.2010, 23:09     Количество перестановок при сортировке массива #2
MAQSA, во время обмена делать увеличения счетчика
][акер
#define книжный_червь Я
 Аватар для ][акер
182 / 93 / 6
Регистрация: 30.01.2010
Сообщений: 780
23.05.2010, 23:19     Количество перестановок при сортировке массива #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ну, допустим методом Пузырька:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include "stdafx.h" // Если не Visual Studio и не Visual C++, то эту строчку писать не надо
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
int main()
{
    int i = 0,a[10],kol_vo = 0,c;
    srand(time(NULL));
    for (; i < 10; i++) {
        a[i] = rand() % 1000;
        cout << a[i] << ' ';
    }
    cout << endl;
    bool p;
    while (!p) {
        p = true;
        for (i = 0; i < 9; i++)
            if (a[i] < a[i + 1]) {
                kol_vo++;
                c = a[i];
                a[i] = a[i + 1];
                a[i + 1] = c;
                p = false;
            }
    }
    for (i = 0; i < 10; i++)
        cout << a[i] << ' ';
    cout << endl;
    setlocale(LC_ALL,"");
    cout << "Перестановок: " << kol_vo;
    getch();
    return 0;
}
MAQSA
2 / 2 / 0
Регистрация: 18.04.2010
Сообщений: 119
24.05.2010, 09:51  [ТС]     Количество перестановок при сортировке массива #4
Понял. А как потом вытянуть эту переменную с шаблона уже в реализацию, для того что бы сравнить с 2-й?
Yandex
Объявления
24.05.2010, 09:51     Количество перестановок при сортировке массива
Ответ Создать тему
Опции темы

Текущее время: 02:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru