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

Сортировка - C++

Восстановить пароль Регистрация
 
katena88
 Аватар для katena88
5 / 1 / 1
Регистрация: 25.10.2010
Сообщений: 86
13.05.2011, 20:42     Сортировка #1
Помогите отсортировать массив символов быстрой сортировкой) я ее не понимаю. Сделала вот так и не получается
Код
// ф-ция быстрой сортировки с разделением
int BSortirovka(int N, char* a)
{
template<class T>
long i = 0, j = N;            // поставить указатели на исходные места
  T temp, p;
 
  p = a[ N>>1 ];                // центральный элемент
 
  // процедура разделения
  do {
    while ( a[i] < p ) i++;
    while ( a[j] > p ) j--;
 
    if (i <= j) {
      temp = a[i]; a[i] = a[j]; a[j] = temp;
      i++; j--;
    }
  } while ( i<=j );
 
 
  // рекурсивные вызовы, если есть, что сортировать
  if ( j > 0 ) quickSortR(a, j);
  if ( N > i ) quickSortR(a+i, N-i);
}
 
   return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dampir_sanek
149 / 147 / 21
Регистрация: 09.02.2010
Сообщений: 407
14.05.2011, 06:31     Сортировка #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
template<class T>
void qs(T* s_arr, T first, T last)
{
    T i = first, j = last, x = s_arr[(first + last) / 2];
 
    do {
        while (s_arr[i] < x) i++;
        while (s_arr[j] > x) j--;
 
        if(i <= j) {
            if (i < j) swap(s_arr[i], s_arr[j]);
            i++;
            j--;
        }
    } while (i <= j);
 
    if (i < last)
        qs(s_arr, i, last);
    if (first < j)
        qs(s_arr, first,j);
}
держи, должно работать.
katena88
 Аватар для katena88
5 / 1 / 1
Регистрация: 25.10.2010
Сообщений: 86
14.05.2011, 07:09  [ТС]     Сортировка #3
на самую первую строчку ругается
dampir_sanek
149 / 147 / 21
Регистрация: 09.02.2010
Сообщений: 407
14.05.2011, 10:01     Сортировка #4
katena88, компилятор и ИДЕ какая? Что за ошибка?
Yandex
Объявления
14.05.2011, 10:01     Сортировка
Ответ Создать тему
Опции темы

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