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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Romahka
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 31
#1

Получить массив С(К). упорядоченный по возрастанию, путем слияния массивов A(N) и В(М). упорядоченных по возрастанию (К = N + М). - C++

24.11.2013, 14:07. Просмотров 565. Ответов 2
Метки нет (Все метки)

Получить массив С(К). упорядоченный по возрастанию, путем слияния массивов A(N) и В(М). упорядоченных по возрастанию (К = N + М).



помогите написать программу с помощи с++
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2013, 14:07     Получить массив С(К). упорядоченный по возрастанию, путем слияния массивов A(N) и В(М). упорядоченных по возрастанию (К = N + М).
Посмотрите здесь:
Получить массив С(К), упорядоченный по возрастанию, путем слияния массивов A(N) и B(M), упорядоченных по возрастанию (K = N + M) C++
C++ Получить из двух упорядоченных массивов путем слияния упорядоченный по возрастанию массив
C++ Из двух упорядоченных массивов получить путем слияния упорядоченный массив C
Объединение двух упорядоченных по возрастанию массивов в один, также упорядоченный C++
C++ Получить упорядоченный массив путем слияния двух введенных и вывести его
Объединить два упорядоченных по возрастанию массива в один, также упорядоченный массив C++
C++ Из двух массивов, упорядоченных по возрастанию, получить третий
Сортировка 2-х одномерных массивов в 1 упорядоченный массив по возрастанию C++
C++ Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию
Из упорядоченных по возрастанию значений двух исходных массивов сформировать третий массив C++
C++ Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
C++ Упорядоченный по неубыванию массив превратить в упорядоченный по возрастанию, оставив уникальные элементы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
magirus
24.11.2013, 14:12
  #2
 Комментарий администратора 
называйте темы информативно, согласно правил форума
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 831
24.11.2013, 14:24     Получить массив С(К). упорядоченный по возрастанию, путем слияния массивов A(N) и В(М). упорядоченных по возрастанию (К = N + М). #3
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
28
29
30
31
32
33
34
35
#include <iostream>
#include <vector>
#include <functional>
 
template <class InputIter1, class InputIter2, class OutputIter, class Comp>
OutputIter merge(InputIter1 first1, InputIter1 last1,
                 InputIter2 first2, InputIter2 last2,
                 OutputIter result, Comp comp)
{
    while ( first1 != last1 && first2 != last2 ) {
        if ( comp(*first1, *first2) ) {
            *result = *first1;
            ++first1;
        } else {
            *result = *first2;
            ++first2;
        }
        ++result;
    }
 
    for (; first1 != last1; ++first1, ++result) *result = *first1;
    for (; first2 != last2; ++first2, ++result) *result = *first2;
    return result;
}
 
int main()
{
    std::vector<int> v1 {0, 2, 4, 6};
    std::vector<int> v2 {1, 3, 5, 7};
    //check is sorted
    std::vector<int> v3 ( v1.size() + v2.size() );
    merge( begin(v1), end(v1), begin(v2), end(v2), begin(v3), std::less<int>() );
    for (auto &val : v3) std::cout << val << ", ";
    return 0;
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru