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

Объединение двух списков в один без повтора элементов (С++) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Построить матрицу по образцу http://www.cyberforum.ru/cpp-beginners/thread831736.html
помоги пожалуйста ,а то я совсем не разбираюсь
C++ выделение памяти Здравствуйте, помогите пожалуйста исправить ошибку, это лишь малая часть кода. В задании: поле name должно быть динамическим: char *name. Конструктор выделяет под него память, деструктор -... http://www.cyberforum.ru/cpp-beginners/thread831730.html
C++ Поиск в файле и сортировка
Задача : Предусмотреть поиск животных по возрасту,кличке. Отсортировать в файле животных по породе. Проблема : Немогу ни как найти слова в файле...и вывод породы тоже не в лучшем состоянии......
C++ Сортировка чисел с использованием файлов
Доброго времени суток. Не первый день уже пытаюсь завершить задание, да вот работа с файлами меня подводит. Суть задания такова: Ввести числа (я для этого использовал генератор) и записать их в...
C++ Написать программу, которая находит в массиве значения, повторяющиеся два и более раз http://www.cyberforum.ru/cpp-beginners/thread831700.html
Помогите решить задачу. Написать программу, которая находит в массиве значения, повторяющиеся два и более раз, и показывает их на экран. Массив состоит из 10 элементов, заполненный...
C++ сложение двух двоичных чисел Помогите разобраться со сложением двоичных чисел. Напишите алгоритм сложения двух двоичных чисел! подробнее

Показать сообщение отдельно
romka_f
1 / 1 / 0
Регистрация: 08.04.2013
Сообщений: 15

Объединение двух списков в один без повтора элементов (С++) - C++

08.04.2013, 18:34. Просмотров 2126. Ответов 18
Метки (Все метки)

нужно дописать функцию, которая делает из двух списков один (новый), в котором все элементы разные, то есть не повторяются. Спасибо!
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <iostream>
using namespace std;
 
class Elem
{
public:
int num;
Elem *next;
Elem (int n) { num = n; next = NULL; };
};
 
class List
{
protected:
Elem *first, *last;
public:
Elem *current;
public:
List () { first = last = current = NULL; };
void add_element (int n);
void delete_element ();
int is_empty () { return (first == NULL); };
void start () { current = first; };
int end () { return (current == NULL); };
void next(){if (!end())current = current -> next;};
void print();
int* merge_lists(int* head1, int* head2);
};
 
int main()
{
List l;
List l2;
int k;
cout << "Введите элемент 1 списка (0,чтобы закончить):\n";
cin >> k;
while (k!=0)
{
l.add_element (k);
cout << "Введите элемент 1 списка (0,чтобы закончить):\n";
cin >> k;
};
 
cout << "Введите элемент 2 списка (0,чтобы закончить):\n";
cin >> k;
while (k!=0)
{
l2.add_element (k);
cout << Введите элемент 2 списка (0,чтобы закончить):\n";
cin >> k;
};
 
 
cout << "1 список: ";
for (l.start(); !l.end(); l.next())
{
cout << l.current->num << ' ';
}
 
cout << endl;
 
cout << "2. список: ";
for (l2.start(); !l2.end(); l2.next())
{
cout << l2.current->num << ' ';
}
 
 
return 0;
};
 
 
void List::add_element (int n)
{
Elem *p = new Elem (n);
if (first == NULL) first = last = p;
else last = last -> next = p;
current =p;
};
 
void List:elete_element ()
{
Elem *p = first;
if(!is_empty())
{
if (current == first) current = first-> next;
first = first -> next;
delete p;
if(is_empty())last = NULL;
}
};
 
void List:rint()
{
for(start(); !end(); next())
cout << current->num << endl;
cout << endl;
}
 
 
int* List::merge_lists(int* head1, int* head2)
{
//ЧТО-ТО.....
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.