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

Проблемы с быстрой сортировкой - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Упорядочить строки матрицы по убыванию http://www.cyberforum.ru/cpp-beginners/thread806484.html
Дана матрица А(n,m). Упорядочить строки матрицы по убыванию суммы находящихся в них элементов.
C++ Если ввода нет, то продолжать цикл Возвращаясь к теме таймера, как сделать такое: есть цикл, который постоянно работает и выводит на экран значение таймера. В любой момент времени пользователь может нажать клавишу и выйти из цикла. Но если программа будет ждать ввода пользователя, то цикл будет стоять на месте и следовательно ничего не будет выводится на экран, а если оставить как есть, то программа так и не получит ввода от... http://www.cyberforum.ru/cpp-beginners/thread806478.html
C++ Перегруженные функции
Всем привет. Прошу помощи. Я сильно запутался, и не могу сделать пару аспектов в задание. Вот собственно само задание: Написать перегруженные функции для работы с массивами типа int, double, char и типа bool. (Вывод на экран, заполнение случайными значениями, очистка, сброс в 0 всех значений), перемешивание, сортировка. (20 функций) Вот сам мои наработки. Есть ошибки в самих массивах,...
Объясните для чего нужна строчка? C++
ВОт прога #include <iostream> using namespace std; int main () { int stringSize; cout << "Size of string: "; cin >> stringSize;
C++ Не могу проверить переменную класса на соответствие NULL http://www.cyberforum.ru/cpp-beginners/thread806449.html
Здравствуйте. Есть переменная класса private char *pGetQuery; В конструкторе ей присваивается NULL pGetQuery = NULL; При вызове метода класса пытаюсь проверить переменную if(pGetQuery != NULL) Но проверка всегда выдает истину. Что неправильно делаю?
C++ Скриншот в файл + итерации В чем задача: После некой операции, программа должна сохранять всё, что есть на экране в файл. Много раз. Точнее вбить одну функцию с последующим сохранением в файл под цикл. В чем я ноль: как делать снимок экрана, как сохранять его в файл + как сохранять в разные файлы (001.bmp, 002.bmp..) подробнее

Показать сообщение отдельно
Why so seriouS
 Аватар для Why so seriouS
44 / 44 / 1
Регистрация: 12.03.2013
Сообщений: 167
12.03.2013, 17:57     Проблемы с быстрой сортировкой
Думаю так будет лучше:
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
int compares = 0, swaps = 0;
void quickSortRow( int **m, int row, int low, int high )
{
    //compares = 0;  swaps = 0;
    int i = low;
    int j = high;
    int x = m[ row ][ ( low + high ) / 2 ];
    do
    {
        while( m[ row ][ i ] < x ) { ++i; compares++;}
        while( m[ row ][ j ] > x ) { --j; compares++;}
        compares++;
        if ( i <= j )
        {
            int temp = m[ row ][ i ];
            m[ row ][ i ] = m[ row ][ j ]; 
            m[ row ][ j ] = temp;
            swaps++;
            i++;
            j--;
        }
    }
    while ( i < j ); 
    if ( low < j ) {  quickSortRow( m, row, low, j );}
    if ( i < high ) {  quickSortRow( m, row, i, high ); }
}
Сортировка представляет собой рекурсивные вызовы, и поэтому когда следующий раз функция вызывает саму себя то переменные снова обнуляются.
 
Текущее время: 22:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru