Назад к задачам
Junior — Senior
5

Финальный массив после слияния

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

После завершения основного цикла слияния необходимо добавить оставшиеся элементы одного из векторов в итоговый массив, избегая дополнительных проверок.

std::vector<int> merged{};
merged.reserve(first.size() + second.size());

size_t i = 0, j = 0;
while (i < first.size() && j < second.size()) {
    if (first[i] > second[j]) {
        merged.push_back(second[j++]);
    } else {
        merged.push_back(first[i++]);
    }
}