Реализовать сортировку вектора по возрастанию

В исходной функции вектор передан по значению, поэтому сортировка не видна вызывающему коду. Для изменения исходного контейнера нужен параметр std::vector<int>&.

Короткий ответ

Что ответить на собеседовании

В исходной функции вектор передан по значению, поэтому сортировка не видна вызывающему коду. Для изменения исходного контейнера нужен параметр std::vector&.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо упорядочить массив целых чисел, представленный в виде std::vector<int>, в порядке возрастания, используя стандартный алгоритм сортировки.

void sortMe(std::vector<int> data) {
    std::sort(data.begin(), data.end());
}

Ответ

В исходной функции вектор передан по значению, поэтому сортировка не видна вызывающему коду. Для изменения исходного контейнера нужен параметр std::vector&.

void sortMe(std::vector<int>& data) {
    std::sort(data.begin(), data.end());
}

Подключите и . Пустой и одноэлементный контейнеры допустимы. Порядок получается неубывающим, то есть равные значения сохраняются. Сложность по сравнениям O(n log n). Если требуется не менять оригинал, возвращайте отсортированную копию отдельным результатом вместо void.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее