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

Слияние двух отсортированых массивов в один - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не выполняется программа проводника http://www.cyberforum.ru/cpp-beginners/thread911586.html
Добрый день. Пишу программу проводник под DOS, начал с простого, вывод списка файлов из категории. В итоге программа не работает, в поисках багов оставил только одну функцию - вывод первого найденного файла и для "вылова" багов добавил "cout<<sometheng" после каждого этапа выполнения программы и вышло, что баг возникает при нахождении первого файла. Сейчас напишу код программы, приложу скриншот и...
C++ Размер массива при передачи в функцию День добрый, подскажите столкнулся с такой проблемой: void masssize (char mass) { int size = sizeof(mass)/sizeof(mass); cout << size; } int main () { http://www.cyberforum.ru/cpp-beginners/thread911575.html
Потоковое Чтение и запись в файл C++
Всем привет. Подскажите пожалуйста с помощью каких функций и библиотек лучше всего производить запись и чтение из файла, + подскажите как сделать редактирование той же самой записи в файле. Заранее спасибо
Отловить сообщение о завершении потока(треда) C++
Привет! Студия постоянно сигнализирует в окне вывода о завершении разных потоков в программе. Допустим я сам создаю один поток, который довольно сложен и в нем используется куча разных длл. Так вот при завершении этого потока - все эти длл выгружаются автоматически из памяти. и все ок, и хорошо работает. вот только у меня одна проблема. мой тред создается по желанию пользователя... и вот если...
C++ Найти ошибку http://www.cyberforum.ru/cpp-beginners/thread911553.html
Не могу найти ошибку в программе, не ищет букву "а", в некоторых случаях подсчет не правильный. Программа должна найти и подсчитать в строке кол-во букв "а" в первом слове. #include<conio.h> #include<string.h> #include<stdlib.h> #include<stdio.h> #include<iomanip.h> void main() { int a = 0;
C++ (SOS) Как добавить координаты элемента массива в стек? Дяди программисты, спасайте новичка! Задача такая: построить лабиринт(матрицу) из 1 и 0 (идти можно только по единичкам) и сохранить в стек путь. Я всё примерно придумал как сделать, но не могу взять в голову как сделать чтоб программа после проверки истинности условия сохраняла в стек координаты точки, а не само её значение? подробнее

Показать сообщение отдельно
Tulosba
:)
Эксперт С++
4382 / 3225 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
25.06.2013, 15:36     Слияние двух отсортированых массивов в один
А вот мой вариант:
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include <iostream>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <iterator>
 
int main() {
    
    const int N = 5;
 
    int a[N] = { 1,2,3,4,9 };
    int b[N] = { 8,7,6,5,4 };
 
    std::vector<int> c;
 
    int* ai = &a[N-1];
    int* bi = &b[0];
 
    while( ai != &a[-1] && bi != &b[N] )
    {
        if( *ai == *bi )
        {
            c.push_back( *ai );
            ai--;
            bi++;
        }
        else if( *ai < *bi )
        {
            c.push_back( *bi );
            bi++;
        }
        else
        {
            c.push_back( *ai );
            ai--;
        }
    }
 
    while( ai != &a[-1] )
    {
        c.push_back( *ai );
        ai--;       
    }
 
    while( bi != &b[N] )
    {
        c.push_back( *bi );
        bi++;
    }
 
    std::copy( c.begin(), c.end(), std::ostream_iterator<int>( std::cout, " " ) );
 
    std::system( "pause" );
    return 0;
}
P.S. Правда у меня не допускаются дубли в исходных массивах.
 
Текущее время: 19:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru