|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.04.2010, 23:32 | #1 |
Новичок
Джуниор
Регистрация: 16.04.2010
Сообщений: 1
|
quickSort, Быстрая сортировка массива
Помогите пожалуйста реализовать быструю сортировку, мучаюст уже неделю, вводим n, вводим массив. Отсортировать с помощью функции и двух рекурсий внутри нее.
Вот мой код: #include "stdafx.h" #include <iostream.h> int a[1000]; void qsort(int l, int r); void main() { int i, n; cin>>n; for(i=0; i<n; i++) cin>>a[i]; qsort(0, n-1); for(i=0; i<n; i++) cout<<a[i]<<" "; cout<<endl; } void qsort(int l, int r) { int i=l, j=r, m=(l+r)/2; do { while(a[i]<m && i<=r) i++; while(a[j]>m && j>=l) j--; if(i<=j) { a[i]=a[i]+a[j]; a[j]=a[i]-a[j]; a[i]=a[i]-a[j]; i++; j--; } } while(i <= j); if(j>l) qsort(l, j); if(i<r) qsort(i, r); } Незнаю почему не работает, убираю вторую рекурсию пашет но неправильно, оставляю вообще ответ не выдает, хотя и ошибок нет. |
17.04.2010, 00:30 | #2 |
Форумчанин
Регистрация: 02.02.2010
Сообщений: 305
|
Код:
Skype: CODERua
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
быстрая сортировка настолько быстрая | Serg12 | Помощь студентам | 8 | 28.03.2010 21:31 |
Быстрая сортировка | _Studentka_ | Помощь студентам | 9 | 20.11.2009 00:19 |
Быстрая сортировка | lennon | Общие вопросы C/C++ | 0 | 08.10.2009 23:23 |
быстрая сортировка | ГРИГОРИЙ-кореш | Помощь студентам | 1 | 16.04.2009 18:13 |