Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 03.05.2010
Сообщений: 6
1

"слить" 2 массива

03.05.2010, 15:22. Просмотров 963. Ответов 3
Метки нет (Все метки)

помоготи, плиз, с прогой(

есть 2 отсортированных в порядке неубывания массива A[1,N] и B[1,M]. получить отсортированный массив C[1,N+M], состоящий из элементов массивов А и В ("слить" вместе массивы А и В)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2010, 15:22
Ответы с готовыми решениями:

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло",...

Для каждой строки найти слова, которые не имеют ни одного из букв: "l", "k", "r", "s" i "j"
Задано символьные строки. Строка состоит из нескольких слов (наборов символов), которые разделяются...

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование)
Разработать программу с использованием наследования классов, реализующую классы: − воин;...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления"
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс...

3
9 / 9 / 1
Регистрация: 02.04.2010
Сообщений: 25
03.05.2010, 20:56 2
засунь все в третий массив поочередно записав в него элементы первых двух с помощью циклов и сортируй как надо третий массив

C++
1
2
3
4
5
int i;
       for(i = 0; i<N; i++)
       {c[i] = a[i];}
       for(int in = 0; in < M; in++)
       {c[i] = b[in];}
0
Эксперт С++
4709 / 2534 / 753
Регистрация: 18.08.2009
Сообщений: 4,550
03.05.2010, 21:04 3
Цитата Сообщение от g-man Посмотреть сообщение
засунь все в третий массив поочередно записав в него элементы первых двух с помощью циклов и сортируй как надо третий массив
Это не оптимальный вариант. Оптимальный будет такой:
Создаем новый массив, размерностью N+M - сумма размерностей массивов A и B.
Заводим два счетчика (один для первого массива, второй для второго).
С помощью этих счетчиков двигаемся по массивам слева направо сравнивая элементы массивов. Меньший элемент вставляем в новый массив и увеличиваем счетчик этого массива на 1. И так до конца массивов A и B.
0
Эксперт С++
2329 / 1702 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
03.05.2010, 21:05 4
Цитата Сообщение от g-man Посмотреть сообщение
засунь все в третий массив поочередно записав в него элементы первых двух с помощью циклов и сортируй как надо третий массив
Глупый способ. Тебя факт того, что массивы уже отсортированы не смущает?
Арибет, вот функция, которая сливает два отсортированных по неубыванию массива в один:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int* Merge(const int* arr1, int size1, const int* arr2, int size2)
{
  int* arr_dest = new int[size1 + size2];
 
  int i = 0, j = 0, k = 0;
 
  while(i < size1 && j < size2)
    arr_dest[k++] = (arr1[i] < arr2[j])? arr1[i++] : arr2[j++];
 
  while(i < size1)
    arr_dest[k++] = arr1[i++];
 
  while(j < size2)
    arr_dest[k++] = arr2[j++];
 
  return arr_dest;
}
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.05.2010, 21:05

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс"
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания"
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько...

Определить тип данных "Запись", имеющий поля "Фамилия", "Пол", "Зарплата"
определить тип данных запись имеющий поля фамилия пол зарплата. определить массив из 10 записей. в...

Связать отношением наследования классы "Место", "Область", "Город", "Мегаполис"
Для определения иерархии классов связать отношением наследования классы, приведенные в приложении...

Калькулятор для работы с знаками "+" "-" "/" "*" через string без приоритетов
Нужно написать калькулятор для работы с знаками &quot;+&quot; &quot;-&quot; &quot;/&quot; &quot;*&quot; через string. Приоритеты действий...

Базовый класс "Изделие" и производные классы "Мышь", "Клавиатура", "Монитор"
/*Создать класс изделие, с полями себестоимость, цена, время выполнения, стоимость нормочаса и...


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

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

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