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

Подскажите с функцие сортировки - C++

Восстановить пароль Регистрация
 
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
25.10.2013, 18:16     Подскажите с функцие сортировки #1
Есть код:
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
#include<iostream>
#include<vector>
using namespace std;
int main ()
{
    vector<string> v1;
    v1.push_back("Sergey");
    v1.push_back("Ivan");
    v1.push_back("Petr");
    vector <int> cash;
    cash.push_back(90);
    cash.push_back(40);
    cash.push_back(10);
    // Деньги Сергея-$90
    // Деньги Ивана-$40
    // Деньги Петра-$10
    for(int i=0;i<=v1.size()-1;++i)
    {
        sort(v1.begin(),v1.end());
    }
    for(int i=0;i<=v1.size()-1;++i)
    {
        cout<<v1[i]<<ends<<cash[i]<<endl;
    }
 
return 0;
}
Как сделать, что бы при выполнении сортировки, при сортировке имен подхватывались и деньги. Т. Е. что бы не получалось после сортировки
Ivan 90
Petr 40
Sergey 10
А получалось:
Ivan 40
Petr 10
Sergey 90
P.S. Заранее спасибо.

Добавлено через 20 часов 3 минуты
Неужели не кто не знает??
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
25.10.2013, 18:21     Подскажите с функцие сортировки #2
map, pair.
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
25.10.2013, 23:29  [ТС]     Подскажите с функцие сортировки #3
Цитата Сообщение от alsav22 Посмотреть сообщение
pair.
Это, что ?
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
25.10.2013, 23:34     Подскажите с функцие сортировки #4
такое примерно
если имена могут повторяться, multimap там же поищи.

Добавлено через 50 секунд
кстати, они по определению отсортированы, только добавляй и выводи.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.10.2013, 01:16     Подскажите с функцие сортировки #5
Цитата Сообщение от Nikko12 Посмотреть сообщение
Это, что ?
http://www.cplusplus.com/reference/u.../pair/?kw=pair
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
28.10.2013, 20:28  [ТС]     Подскажите с функцие сортировки #6
alsav22, novi4ok, что-то так и не понял как прикрутить map к моему примеру. Можно показать на моем примере???
castaway
Эксперт С++
4848 / 2987 / 368
Регистрация: 10.11.2010
Сообщений: 11,028
Записей в блоге: 10
Завершенные тесты: 1
28.10.2013, 20:30     Подскажите с функцие сортировки #7
C++
1
vector <pair<string, double> > v1;
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
28.10.2013, 20:33  [ТС]     Подскажите с функцие сортировки #8
В map можно только два значения вставить?? А если например дано 10 параметров и нужно что-бы при сотрировке все они тоже подхватывались, т. е., фамилия, должность, зарпалата, год рождения, стаж ... Как тогда их сортировать????
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.10.2013, 20:34     Подскажите с функцие сортировки #9
Цитата Сообщение от Nikko12 Посмотреть сообщение
как прикрутить map к моему примеру
Почитайте про map и поймёте.
castaway
Эксперт С++
4848 / 2987 / 368
Регистрация: 10.11.2010
Сообщений: 11,028
Записей в блоге: 10
Завершенные тесты: 1
28.10.2013, 20:34     Подскажите с функцие сортировки #10
Цитата Сообщение от Nikko12 Посмотреть сообщение
Как тогда их сортировать????
Смотря по какому критерию сортировать хочешь.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.10.2013, 20:38     Подскажите с функцие сортировки #11
Цитата Сообщение от Nikko12 Посмотреть сообщение
В map можно только два значения вставить?? А если например дано 10 параметров
А при чём тогда ваша тема?
Цитата Сообщение от Nikko12 Посмотреть сообщение
Есть код:
Делайте структуры и сортируйте.
novi4ok
549 / 502 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
28.10.2013, 20:47     Подскажите с функцие сортировки #12
создай класс, описывающий твой объект (точнее - твоего субъекта), перегрузи ему операторы сравнения или создай ф-ю сравнения двух объектов данного класса и все будет хорошо. тогда тебе map не нужен (я думал - только имя+деньги), больше подойдет set<MyPersonClass>
XRuZzz
Антикодер
577 / 478 / 23
Регистрация: 15.09.2012
Сообщений: 2,429
28.10.2013, 21:08     Подскажите с функцие сортировки #13
map это по сути красно-черное дерево

Добавлено через 14 минут
то есть в первую очередь нужно читать про деревья, а не только про использование map
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
29.10.2013, 08:37  [ТС]     Подскажите с функцие сортировки #14
castaway, По всем возможным критериям сортировать : по фамилиям (в алфавитном порядке), по зарплате, по должности (в алфавитном порядке), по году рождения... и т. д.

Добавлено через 2 минуты
alsav22, Да, пример возможно не сильно удачный. Я думал, что если указать два параметра то по аналогии можно и с большим кол-вом параметров сделать.
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.10.2013, 15:25     Подскажите с функцие сортировки #15
Nikko12, делайте структуру с нужным количеством полей и функцию сортировки, в которую передавайте флаг, который будет указывать, по какому полю нужно выполнить сортировку.
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
29.10.2013, 19:43  [ТС]     Подскажите с функцие сортировки #16
alsav22, Неужели нету встроенной функции сортировки в С++, которой только необходимо передать кол-во элементов которые нужно сортировать и задать критерий сортировки??
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.10.2013, 20:02     Подскажите с функцие сортировки #17
В стандартных алгоритмах есть sort().
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2013, 01:21     Подскажите с функцие сортировки
Еще ссылки по теме:

Обьясните что происходит в данной функцие C++
C++ Сделать так, чтобы после сортировки вектора указатель показывал на тот же элемент, что и до сортировки
C++ Напишите функцию сортировки, похожую на функцию которая использовалась для сортировки массивов, с той разницей, что ее а

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

Или воспользуйтесь поиском по форуму:
Nikko12
 Аватар для Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
30.10.2013, 01:21  [ТС]     Подскажите с функцие сортировки #18
Цитата Сообщение от alsav22 Посмотреть сообщение
В стандартных алгоритмах есть sort().
Чуть-чуть не подходит
Yandex
Объявления
30.10.2013, 01:21     Подскажите с функцие сортировки
Ответ Создать тему
Опции темы

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