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

Как отсортировать массив? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
21.01.2013, 15:09     Как отсортировать массив? #1
Добрый день.
Как стандартными средствами отсортировать вектор из целых чисел?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
21.01.2013, 15:10     Как отсортировать массив? #2
http://www.cplusplus.com/reference/algorithm/sort/
Евгений89
 Аватар для Евгений89
99 / 99 / 9
Регистрация: 17.04.2011
Сообщений: 554
Завершенные тесты: 2
21.01.2013, 15:29     Как отсортировать массив? #3
Алгоритмы сортировок
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
21.01.2013, 16:01  [ТС]     Как отсортировать массив? #4
Я не хочу изобретать велосипед. Нужна одна функция, которая отсортирует, как в Qt.
sort не работает, делал как в примере, только добавление через push_back.
HighPredator
 Аватар для HighPredator
5347 / 1730 / 320
Регистрация: 10.12.2010
Сообщений: 5,112
Записей в блоге: 3
21.01.2013, 16:54     Как отсортировать массив? #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
#include<iostream>
#include<algorithm>
#include<ctime>
 
using namespace std;
 
int main()
{
    srand(time(0));
    const int N=100;
    int a[N];
    for(int i=0;i<N;i++) 
    {
        a[i]=rand()%100;
        cout<<a[i]<<" ";
    }
    cout<<endl<<"=================="<<endl;
    sort(&a[0],&a[N]);//сортировка
    for(int i=0;i<N;i++) cout<<a[i]<<" ";
    cout<<endl;
    getchar();
    return 0;
}
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
22.01.2013, 13:40  [ТС]     Как отсортировать массив? #6
C++
1
2
3
map<int, string> sortedList;
...// набрали значений
sort(sortedList.begin(), sortedList.end());
ошибка: no match for 'operator-' in '__last - __first'
Почему не работает?
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,588
Записей в блоге: 17
22.01.2013, 13:48     Как отсортировать массив? #7
где вы надыбали std::map<> в приведенных вам примерах ?
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
22.01.2013, 13:55  [ТС]     Как отсортировать массив? #8
Причем тут приведенные примеры? Название темы: Как отсортировать массив?. Массивом может быть что угодно.
Вы знаете, почему сортировка не работает?
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,588
Записей в блоге: 17
22.01.2013, 13:57     Как отсортировать массив? #9
Цитата Сообщение от progeR Посмотреть сообщение
Массивом может быть что угодно.
Вы знаете что такое массив ?
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.01.2013, 13:58     Как отсортировать массив? #10
[progeR], map уже хранит данные отсортированными по ключу.
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
22.01.2013, 14:00  [ТС]     Как отсортировать массив? #11
Так, ладно, с вами все понятно.

Кто знает, подскажите, как отсортировать мэп по ключам?
Цитата Сообщение от [progeR] Посмотреть сообщение
C++
1
2
3
map<int, string> sortedList;
...// набрали значений
sort(sortedList.begin(), sortedList.end());
ошибка: no match for 'operator-' in '__last - __first'
Почему не работает?
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,588
Записей в блоге: 17
22.01.2013, 14:01     Как отсортировать массив? #12
Цитата Сообщение от progeR Посмотреть сообщение
Так, ладно, с вами все понятно.
Кто знает, подскажите, как отсортировать мэп по ключам?
Нет, это с вами все понятно...

Цитата Сообщение от progeR Посмотреть сообщение
Вы знаете, почему сортировка не работает?
Факир был пьян, фокус не удался...

P.S. Литература C++
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 587
22.01.2013, 14:03  [ТС]     Как отсортировать массив? #13
Цитата Сообщение от gray_fox Посмотреть сообщение
[progeR], map уже хранит данные отсортированными по ключу.
Не увидел Ваше сообщение. Эээ, а в каком порядке отсортированы? По убыванию значения ключа, по возрастанию ключа. А если мне не устраивает предложенная сортировка?
Avazart
 Аватар для Avazart
6900 / 5140 / 252
Регистрация: 10.12.2010
Сообщений: 22,588
Записей в блоге: 17
22.01.2013, 14:05     Как отсортировать массив? #14
Цитата Сообщение от progeR Посмотреть сообщение
По убыванию значения ключа, по возрастанию ключа.
std::map<> - не массив http://ru.wikipedia.org/wiki/%D0%9A%...B5%D0%B2%D0%BE
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2013, 14:05     Как отсортировать массив?
Еще ссылки по теме:

Отсортировать массив по убыванию, затем добавить недостающий элемент и отсортировать массив по возрастанию C++
Как отсортировать массив с сохранением исходного порядка? C++
C++ Как отсортировать массив от минимального к максимальному?

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

Или воспользуйтесь поиском по форуму:
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.01.2013, 14:05     Как отсортировать массив? #15
[progeR], по возрастанию. Если не устраивает, можно изменить (3-й параметр в шаблоне класса map).
Yandex
Объявления
22.01.2013, 14:05     Как отсортировать массив?
Ответ Создать тему
Опции темы

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