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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Romahka
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 31
#1

Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort - C++

26.11.2013, 09:23. Просмотров 1408. Ответов 2
Метки нет (Все метки)

2. Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort, прототип которой находится в заголовочном файле сstdlib (написать для нее функцию сравнения, которая передается в качестве параметра, и заполнить таблицу строк).

помогите написать программу с помощи с++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2013, 09:23     Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort
Посмотрите здесь:
Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort C++
Возникли трудности с функцией быстрой сортировки qsort C++
C++ Пример быстрой сортировки массива строк и сортировки методом выбора
C++ Вычислить значение y с помощью стандартной функции и с помощью ряда с точностью 0,0001
исправление функции qsort сортировки матрицы C++
Выполнить сортировку с помощью Чет- нечет C++
Отсортировать в массиве числа с помощью функции qsort по убыванию дробной части C++
Отсортировать методом быстрой сортировки элементы массива, стоящие на четных позициях C++
C++ Выполнить сортировку двумерного массива
Выполнить сортировку целочисленного массива C++
C++ Выполнить сортировку массива в заданном порядке
C++ Выполнить сортировку массива методом пузырька

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2459 / 1631 / 238
Регистрация: 24.11.2012
Сообщений: 4,009
26.11.2013, 09:30     Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort #2
Пример есть в документации http://linux.die.net/man/3/qsort
IrineK
Заблокирован
26.11.2013, 09:59     Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort #3
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
//Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort
 
#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;
 
int Compare (const void *a, const void *b)
{   return (int)(*(double*)a - *(double*)b);
}
 
void Show (double *arr, int N)
{   for(int i = 0; i<N; i++)
        cout<<setw(5)<<arr[i];
    cout<<"\n";
}
 
int main()
{   double A[] = {5.3, 4.7 ,8.3 ,-5.4, 2.7, 9.1, 3.6};
    int N = sizeof(A) / sizeof(double);
    cout<<"Initial array:\n";
    Show (A, N);
 
    qsort(A, N, sizeof(double), Compare);
 
    cout<<"Sorted array:\n";
    Show (A, N);
 
    cin.get();
    return 0;
}
Добавлено через 3 минуты
Для int:

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
#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;
 
int Compare (const void *a, const void *b)
{   return (*(int*)a - *(int*)b);
}
 
void Show (int *arr, int N)
{   for(int i = 0; i<N; i++)
        cout<<setw(5)<<arr[i];
    cout<<"\n";
}
 
int main()
{   int A[] = {5, 4 ,8 ,-5, 2, 9, 3};
    int N = sizeof(A) / sizeof(int);
    cout<<"Initial array:\n";
    Show (A, N);
 
    qsort(A, N, sizeof(int), Compare);
 
    cout<<"Sorted array:\n";
    Show (A, N);
 
    cin.get();
    return 0;
}
Добавлено через 5 минут
Для собственного типа данных:

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
#include <iostream>
#include <cstdlib>
#include <iomanip>
using namespace std;
 
typedef int MyFunnyType;
 
int Compare (const void *a, const void *b)
{   return (*(MyFunnyType*)a - *(MyFunnyType*)b);
}
 
void Show (MyFunnyType *arr, int N)
{   for(int i = 0; i<N; i++)
        cout<<setw(5)<<arr[i];
    cout<<"\n";
}
 
int main()
{   MyFunnyType A[] = {5, 4 ,8 ,-5, 2, 9, 3};
    int N = sizeof(A) / sizeof(MyFunnyType);
    cout<<"Initial array:\n";
    Show (A, N);
 
    qsort(A, N, sizeof(MyFunnyType), Compare);
 
    cout<<"Sorted array:\n";
    Show (A, N);
 
    cin.get();
    return 0;
}
Yandex
Объявления
26.11.2013, 09:59     Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru