Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Соединить их в один упорядоченный массив F. Число сравнений не должно превышать m+n - C++

16.10.2013, 08:28. Просмотров 429. Ответов 5
Метки нет (Все метки)

Даны два упорядоченных набора чисел C1, C2, ..., Cn и D1, D2, ..., Dm. Соединить их в один упорядоченный массив F. Число сравнений не должно превышать m+n.
Не могу понять Число сравнений не должно превышать m+n., если не трудно подскажите
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2013, 08:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Соединить их в один упорядоченный массив F. Число сравнений не должно превышать m+n (C++):

Объединить два упорядоченных по возрастанию массива в один, также упорядоченный массив - C++
Написать программу, которая объединяет два упорядоченных по возрастанию массива в один, также упорядоченный массив. Рекомендуемый вид...

Как соединить массив символов и один символ - C++
void Match(char x) { if (Look == x) GetChar(); else { char s="\'"; strcat(s, x); ...

Дан упорядоченный по неубыванию массив A из N чисел и число X - C++
Дан упорядоченный по неубыванию массив A из N чисел и число X. Получить массив B, вставив X в A так, чтобы B был упорядочен по неубыванию....

Упорядоченный по неубыванию массив превратить в упорядоченный по возрастанию, оставив уникальные элементы - C++
Благоустроенный за неубывания массив B с n элементов превратить в упорядоченный по возрастанию , оставив по одному в каждой группе...

В упорядоченный массив вставить заданное число, сохранив упорядоченность, и удалить последний элемент - C++
в упорядоченном по не возрастанию массиве вставить заданное число так чтобы упорядоченность сохранилась и удалить последний элемент массива

В массив, упорядоченный по убыванию значений элементов, добавить новое число так, чтобы не нарушить упорядоченность - C++
Имеется задача. В массив Х(N), N≤20, упорядоченный по убыванию значений элементов, добавить новое число так, чтобы не нарушить...

5
kamre
126 / 130 / 4
Регистрация: 25.12.2011
Сообщений: 443
16.10.2013, 08:53 #2
Цитата Сообщение от ssvetusik Посмотреть сообщение
Число сравнений не должно превышать m+n., если не трудно подскажите
std::merge
0
ssvetusik
0 / 0 / 0
Регистрация: 25.01.2010
Сообщений: 9
16.10.2013, 09:00  [ТС] #3
может кто подскажет как сделать в цикле?Брат попросил помочь с учебой, а они такое еще не проходили
0
govorov
24 / 24 / 3
Регистрация: 25.09.2013
Сообщений: 76
16.10.2013, 09:18 #4
Наверное примерно так можно: Проходим по массиву С и находим такой Сi, что Сi < D1, а Сi+1 < D1. Затем между Сi и Сi+1 вставляем D1, D2, ..., Dk, пока Dk < Сi+1. Затем ищем следующее место уже для Dk+1 и вся процедура повторяется. Число Сравнений = m+n, т.к. проходим по массиву С (n сравнений) и сравниваем каждый элемент из D (когда вставляем, еще m сравнений).
0
kamre
126 / 130 / 4
Регистрация: 25.12.2011
Сообщений: 443
16.10.2013, 09:38 #5
Цитата Сообщение от ssvetusik Посмотреть сообщение
может кто подскажет как сделать в цикле?
По ссылке выше есть цикл:
C++
1
2
3
4
5
6
7
8
9
10
11
template <class InputIterator1, class InputIterator2, class OutputIterator>
  OutputIterator merge (InputIterator1 first1, InputIterator1 last1,
                        InputIterator2 first2, InputIterator2 last2,
                        OutputIterator result)
{
  while (true) {
    *result++ = (*first2<*first1)? *first2++ : *first1++;
    if (first1==last1) return std::copy(first2,last2,result);
    if (first2==last2) return std::copy(first1,last1,result);
  }
}
0
ssvetusik
0 / 0 / 0
Регистрация: 25.01.2010
Сообщений: 9
16.10.2013, 10:16  [ТС] #6
kamre, это слишком для него сложно, ну т.е. они С++ проходят на начальном уровне
Спасибо
0
16.10.2013, 10:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2013, 10:16
Привет! Вот еще темы с ответами:

Упорядочить массивы по по убыванию, потом соединить массивы в один упорядоченный массив - C (СИ)
Начала писать, запуталась Даны два одномерных массива состоящие из 10 целых чисел. Упорядочить массивы по по убыванию, потом соединить...

Найти сумму максимального количества чисел,при этом их произведение не должно превышать число 300 - Turbo Pascal
В массиве A,содержащем целые положительные числа, найти сумму максимального количества чисел,при этом их произведение не должно превышать...

Соединить два массива в один, упорядоченный в возрастающем порядке - Pascal ABC
Даны численный массив A упорядоченный в возрастающем порядке и численный массив B упорядоченный в убывающем порядке. Напишите программу,...

В массиве A[100],содержащем целые положительные числа, найти сумму максимального количества чисел,при этом их произведение не должно превышать число 3 - Pascal
В массиве A,содержащем целые положительные числа, найти сумму максимального количества чисел,при этом их произведение не должно превышать...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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