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

Сортировка двух векторов (имена и возраст) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Есть код , написать коментарии к каждой строке http://www.cyberforum.ru/cpp-beginners/thread838721.html
#include<iostream> #include<math.h> using namespace std; void tryfunc(double x) { double y; try { if(x<=0||x==5){ throw 0;}
C++ Потоковый вывод матрицы-объекта с манипуляторами Нужно вывести матрицу-объект с помощью " << " используя манипуляторы из <iomanip>, заданные вне класса (в мэйне) Краткое описание класса: class Matrix { private: double * M; // указатель на матрицу int m; // число строк http://www.cyberforum.ru/cpp-beginners/thread838696.html
C++ разработка рекурсивных функций, не возвращающих значений (нахождение n-го члена и суммы n первых членов прогрессии)
помогите пожалуйста разобраться с задачей: Даны первый член и разность арифметической прогрессии. Написать рекурсивную функцию для нахождения n-го члена и суммы n первых членов прогрессии
Указатели для начинающего C++
Доброго времени суток Всем. Перерыл много литературы, но так и не понял как можно реализовать одну задачку: суть ее такова, что нужно сперва ввести значение переменной, после выбрать режим 1 - выводить адрес на который указывает указатель; 2 - выводить данные на которые указывает указатель. Проблема в том, что мало только начинающий и не очень понимаю как реализовать подпрограмму выбора режим,...
C++ разработка нерекурсивных функций (вычислить значение выражения) http://www.cyberforum.ru/cpp-beginners/thread838687.html
помогите плииз)) не могу разобраться в задаче:вычислить значение выражения a/b+c/d; результат представить в виде обыкновенной дроби, выполнив сокращение.
C++ Проверить, является ли один массив подмножеством другого Здравствуйте! Опять нужна помощь. Задание: Написать функцию, принимающую в качестве аргумента, указатели на два массива (А и В) и размеры массивов. Функция проверяет, является ли массив В подмножество массива А и возвращает указатель на начало найденного фрагмент, если элемента нет, возвращает 0. Помогите, пожалуйста, найти ошибку! Вот примерный код #include<iostream> #include<time.h>... подробнее

Показать сообщение отдельно
strange_man
 Аватар для strange_man
9 / 9 / 0
Регистрация: 17.05.2012
Сообщений: 117
15.04.2013, 19:13     Сортировка двух векторов (имена и возраст)
Имеется вектор строк, которые обозначают имена, и вектор чисел, означающий их возрасты.

Нужно написать функцию sort() которая бы сортировала имена в алфавитном списке, и потом соответственно этим именам размещала возрасты участников.

я написал такую функцию
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void Name_pairs::sort(vector<string>& a, vector<double>& b)
{
    for (int j = a.size() - 1; j >= 2; j--)
    {
        for (int i = 0; i < j; i++)
        {
            if (a[i] > a[i+1])
            {
                string temp_st = a[i];
                a[i] = a[i+1];
                a[i+1] = temp_st;
 
                double temp_dbl = b[i];
                b[i] = b[i+1];
                b[i+1] = temp_dbl;
            }
        }
    }
}
но ведь наверно это не очень хорошо в плане производительности каждый раз менять местами элементы вектора чисел?

подскажите, а лучше намекните, можно ли сделать это более изящно? или сойдет?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru