Задача · Алгоритмы и сложность · урок 8 из 9
Задача: сортировка по ключу
Напишите функцию void sort_by_age(std::vector<Person>& people), которая упорядочивает людей по возрасту, от младших к старшим. Люди одного возраста должны остаться в том порядке, в котором были до вызова. Структура Person уже есть в файле: это группа именованных полей, где p.name — имя, а p.age — возраст.
{{"a", 30}, {"b", 25}, {"c", 40}}→{{"b", 25}, {"a", 30}, {"c", 40}}{{"a", 30}, {"b", 20}, {"c", 30}, {"d", 20}}→{{"b", 20}, {"d", 20}, {"a", 30}, {"c", 30}}
Ограничения: вектор может быть пустым, а возрасты разных людей могут совпадать. В проверках есть вектор из 26 человек с именами A, B, …, Z и возрастами 2, 1, 2, 1, …: после сортировки сначала идут все люди возраста 1, потом все возраста 2, и внутри каждой группы порядок прежний.
Не добавляйте лишних #include, если в задаче это прямо не сказано.
Подпишись, чтобы пройти курс
Курс бесплатный. Войди через Telegram и подпишись на канал — откроются все уроки.