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

Quiсk sort - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Даны два двухмерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого равен 100 http://www.cyberforum.ru/cpp-beginners/thread43617.html
Даны два двухмерных массива одинаковых размеров. Создать третий массив такого же размера, каждый элемент которого равен 100, если соответствующие элементы двух первых массивов имеют одинаковый знак, и равен нулю в противном случае...
C++ Дан двухмерный массив.Найти сумму элементов побочной диагонали и сумму элементов главной диагонали Дан двухмерный массив.Найти сумму элементов побочной диагонали и сумму элементов главной диагонали... Программу надо в С. http://www.cyberforum.ru/cpp-beginners/thread43613.html
C++ НОД для трех чисел.
Здорова народ! Как найти найболшый общий делитель для трьох чисел?
C++ Дан двухмерный массив.Выямнить является ли произведение элементов заданного столбца массива трехзначным числом
Дан двухмерный массив.Выямнить является ли произведение элементов заданного столбца массива трехзначным числом
C++ Сформировать два массива.... http://www.cyberforum.ru/cpp-beginners/thread43599.html
Дан массив из 20 элементов. Сформировать два массива размером 10, включив в первый из них элементы с четными номерами, во второй с нечетными. Не могу сформировать массив, Если не сложно напишите всю программу... Добавлено через 2 минуты 5 секунд сам пробывал писать: #include<stdio.h> main() { int a={3,4,5,7,3,5,3,3,5,3,3,9,0,6,7,4,5,5,8,3}, b, c, i; printf("c=");
 

Показать сообщение отдельно
Mailto
0 / 0 / 0
Регистрация: 10.07.2009
Сообщений: 5

Quiсk sort - C++

10.07.2009, 19:30. Просмотров 855. Ответов 14
Метки (Все метки)

Пытаюсь освоить метод быстрой сортировки, в оригинале quick sort.
Очень новенький в c++. Учил не много c++ builder, но решил написать в "консоли". Вот простой код:
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
43
44
45
46
47
48
49
50
51
52
53
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream.h>
#pragma argsused
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
int a[12];
//---------------------------------------------------------------------------
void swap(int &a,int &b)   //
{                          //  меняет местами два числа
int c=a;                   //
a=b; b=c;                  //
}                          //
//---------------------------------------------------------------------------
void sort (int l,int r)
{
int i=l,j=r;
int x=a[l+random(r-l)+1];          //опорный ел-мент -
while (i<=j)                       //случайный елемент массива
      {
      while (a[i]<x) i++;
      while (a[j]>x) j--;
            if (i<=j)
            swap(a[i],a[j]);
       }
sort(i,r);
sort(l,j);
 
}
 
 
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
randomize();
for(int i=0;i<13;i++)             //
        {                         //
        a[i]=random(199)+1;       // присваивание эл-там массива
        cout<<a[i]<<"   ";        // случайные числа и вывод их
        }                         //
cout<<endl;
sort(0,12);                 //вызов
for(int i=0;i<13;i++)             //
        {                         //
        cout<<a[i];               // вывод
        cout<<"  ";               //
        }                         //
cin>>"";                    //штука что б увидеть результат
}
//---------------------------------------------------------------------------
программа запускается, но выдаёт ошибку
"Project Project1.exe raised exception class EStackOverflost with message 'Stack overflow'.Use Step or Run to continue."
Прогуглив ошибку ничего мне понятного не нашёл. Спасибо за любую помощь.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru