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

Как вызвать функцию, которая производит быструю сортировку - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.60
Ain
2 / 2 / 0
Регистрация: 20.12.2009
Сообщений: 20
20.12.2009, 18:23     Как вызвать функцию, которая производит быструю сортировку #1
Подскажите пожалуйста, как в С++ вызвать функцию, которая проводит быструю сортировку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2009, 18:23     Как вызвать функцию, которая производит быструю сортировку
Посмотрите здесь:

C++ Как вызвать функцию?
Как правильно вызвать функцию? C++
C++ Оформить сортировку элементов отдельной строки матрицы в виде функции
Нужно написать полную быструю сортировку!!! C++
C++ Как вызвать функцию из функции main?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,309
20.12.2009, 18:25     Как вызвать функцию, которая производит быструю сортировку #2
Читать справку по функции: qsort
Впрочем, в С++ есть алгоритм sort, который работает немного быстрее.
Ain
2 / 2 / 0
Регистрация: 20.12.2009
Сообщений: 20
20.12.2009, 18:38  [ТС]     Как вызвать функцию, которая производит быструю сортировку #3
если несложно, дайте ссылку, не могу найти
outoftime
║XLR8║
 Аватар для outoftime
505 / 427 / 33
Регистрация: 25.07.2009
Сообщений: 2,297
20.12.2009, 18:44     Как вызвать функцию, которая производит быструю сортировку #4
http://www.cplusplus.com/reference/c...cstdlib/qsort/

Добавлено через 36 секунд
http://www.cplusplus.com/reference/algorithm/sort/
JuliaSt
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 4
15.04.2012, 22:39     Как вызвать функцию, которая производит быструю сортировку #5
Доброго времени суток!
Уменя большая просьба о помощи. Нужно создать функцию быстрой сортировки для массива символьных строк. Вот код программы. У меня на 12 строке программа всегда прекращяет свою роботу. Никак не могу понять в чём ошыбка. Может быть кто-то мне подскажет)
Большое спасибо наперед за помощь!!!



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<stdio.h>
#include<string.h>
#include<windows.h>
#define n 10
void QuickSort_alpha(char *mas[], int left, int right)
{   
        int i, j, p;
        сhar *tmp[n];
    i=left; 
    j=right;        
    while (i!=j){
        if((strcmp(mas[i],mas[j])>0)!=(i>j)){       
                        tmp[i]=mas[i];      
            mas[i]=mas[j];
                mas[j]=tmp[i];
            
            p=i;    
            i=j;        
          
            if (p<j)    
                              j=p+1;
            else j=p-1;
        }else{
            if (i<j) j--; 
        else j++;
        };
    };
    
    if (left<i-1) QuickSort_alpha(mas,left,i-1);
    if (i+1<right) QuickSort_alpha(mas,i+1,right);
}
 
 
int main(void)
{
    SetConsoleOutputCP(1251);
    char mstr[n][n],*pmstr[n];
    int i=0, k=0, c=0;
    printf("\n\n Введите не больше %d слов(конец ввода-символ *):\n",n);
        
    for(;i<n;i++)
    {
        scanf("%s",mstr[i]);
        if (mstr[i][0]=='*') break;
    }
        
    for(;c<i;c++) pmstr[i]=mstr[i];
    
    QuickSort_alpha(pmstr, 0, i);
        
    puts("\n\n Отсортировано методом Хоара:\n");
    for(;k<i;k++) puts(mstr[k]);
    printf("\n Было введено %d строк\n\n[C]
.", i);

}[/C]
Yandex
Объявления
15.04.2012, 22:39     Как вызвать функцию, которая производит быструю сортировку
Ответ Создать тему
Опции темы

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