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

Сортировка методом QuickSort - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Время работы программы http://www.cyberforum.ru/cpp-beginners/thread1166981.html
как считать?и как микросекунды?именно микросекунды нужны.
C++ Записать на место отрицательных элементов матрицы нули , а на место положительных- единицы Дана квадратная матрица A. Записать на место отрицательных элементов матрицы нули , а на место положительных- единицы. Вывести на печать нижнюю треугольную матрицу в общепринятом виде. http://www.cyberforum.ru/cpp-beginners/thread1166973.html
C++ Вывести два последовательных члена среднее арифметическое которых ближе всего к х
Вывести на экран два последовательных члена этой последовательности, среднее арифметическое которых ближе всего к х. есть код, но он немного отличается... #include <ctime> #include...
Обмен данными между процессами C++
Уважаемое сообщество, подскажите, пожалуйста, с решением такой проблемы: у меня два процесса c# и с++, и мне необходимо передавать массив байт из одного процесса в другой, в частности из c#, в с++. В...
C++ Перевести с паскаль на с++ (Найти количество четных цифр) http://www.cyberforum.ru/cpp-beginners/thread1166964.html
14 var a, b, k : integer; begin k := 0; write('введите число: '); readln(a); while a <> 0 do begin b := a mod 10;
C++ Записать на место отрицательных элементов матрицы нули ,а на место положительных единицу Дана квадратная матрица A. Записать на место отрицательных элементов матрицы нули ,а на место положительных единицу. Вывести на на печать нижнюю треугольную матрицу в общепринятом виде. подробнее

Показать сообщение отдельно
ProjectVenom
75 / 0 / 1
Регистрация: 12.09.2013
Сообщений: 62

Сортировка методом QuickSort - C++

05.05.2014, 15:22. Просмотров 670. Ответов 0
Метки (Все метки)

Не работает программа. Точнее она компилируется без ошибок, а когда запускаю exeшник, то через некоторое время прекращается работа программы. В чем проблема ? Вот код программы:

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
38
39
40
41
42
/* Алгоритм QuickSort. */ 
#include <iostream>
#include <cstring>
using namespace std;
void quicksort(char *items, int len);
void qs(char *items, int left, int right);
int main()
{
    char str[] = "jfmckldoelazlkper";
    cout <<"Массив в исходном порядке: " <<str <<"\n";
    quicksort(str, strlen(str));
    cout <<"Отсортированный массив: " <<str <<"\n";
    return 0;
}
// Функция обеспечивает вызов реальной функции сортировки
void quicksort(char *items, int len)
{
     qs(items, 0, len-1);
}
// Рекурсивная версия алгоритма QuickSort для сортировки символов
void qs(char *items, int left, int right)
{
     int i, j;
     char x, y;
     i = left; j = right;
     x = items[(left+right) / 2];
     do 
     {
         while ((items[i] < x) && (i < right)) i++;
         while ((x < items[j]) && (j > left)) j--;
         if (i <= j)
         {
               y = items[i];
               items[i] = items[j];
               items[j] = y;
               i++; j--;
         }        
     }
     while (i <= j);
     if (left < j) qs(items, left, i);
     if (i < right) qs(items, i, right);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru