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

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

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

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

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

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

помогите написать программу с помощи с++
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2013, 09:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort (C++):

Выполнить сортировку массива с помощью стандартной функции быстрой сортировки qsort - C++
Здравствуйте! прошу вас о помощи! помогите пожалуйста с программой! "Выполнить сортировку массива с помощью стандартной функции быстрой...

Возникли трудности с функцией быстрой сортировки qsort - C++
Добрый вечер. Есть массив прямоугольников со своей высотой и шириной, надо отсортировать отдельно по высоте, ширине и площади...

Пример быстрой сортировки массива строк и сортировки методом выбора - C++
Добрый вечер. Скиньте пожалуйста пример быстрой сортировки массива строк и сортировки массива строк методом выбора. Очень срочно надо,...

Вычислить значение y с помощью стандартной функции и с помощью ряда с точностью 0,0001 - C++
Ребята выручайте! 1. Дано действительное число x. Вычислить значение y с помощью стандартной функции и с помощью ряда с точностью...

исправление функции qsort сортировки матрицы - C++
#include "stdafx.h" #include <iostream> #include <math.h> #include <conio.h> #include <locale.h> #include <algorithm> ...

Выполнить сортировку с помощью Чет- нечет - C++
Можете помочь с задачей, пожалуйсттааа. Заранее благодарна:) Дан массив А. Нужно выполнить сортировку с помощью Чет- нечет

2
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,070
26.11.2013, 09:30 #2
Пример есть в документации http://linux.die.net/man/3/qsort
0
IrineK
Заблокирован
26.11.2013, 09:59 #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;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2013, 09:59
Привет! Вот еще темы с ответами:

Отсортировать в массиве числа с помощью функции qsort по убыванию дробной части - C++
Помогите, пожалуйста. Дан массив вещественных чисел double arr. Отсортируйте в нем числа с помощью функции qsort() по убыванию дробной...

Отсортировать методом быстрой сортировки элементы массива, стоящие на четных позициях - C++
Имеется одномерный массив длиной N = 50. Отсортировать методом быстрой сортировки элементы массива, стоящие на четных позициях, так, чтобы...

Выполнить сортировку двумерного массива - C++
Выполнить сортировку двумерного массива с перестановкой строк так, что бы среднии значения возрастали от первой строки к последней(на с++...

Выполнить сортировку целочисленного массива - C++
Выполнить сортировку целочисленного массива (поиск в массиве) из n элементов. Алгоритм сортировки (поиска) оформить в виде...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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