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

Реализовать функцию пересечения множества - C++

Восстановить пароль Регистрация
 
Mebiys
0 / 0 / 0
Регистрация: 20.01.2016
Сообщений: 30
31.05.2016, 11:42     Реализовать функцию пересечения множества #1
У меня есть функция для объединения, а надо ее переписать, чтобы было пересечение, т.е. функция И.
Я никак не пойму....
Помогите пожалуйста переписать функцию под работу И.
Много сам думал, но так и не понял.
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
Hashtab Hashtab::operator &(const Hashtab &B)
{
    Hashtab C(32);
 
    for (int i=0; i<Size; i++)
        {
        C.A[i]=A[i];
        }
 
    C.Size=Size;
    C.Power=Power;
    C.Hi=Hi;
 
    for (int i=0; i<Size; i++)
        {
        if (B.A[i]!=NULL)
            {
            if (C.A[i]==NULL)
                {
                C.A[i]=B.A[i];
                }
            else
                {
                List *L2=B.A[i];
 
                while (L2)
                    {
                    bool a=true;
                    List *L1=C.A[i];
 
                    while(L1)
                        {
//по идеи после этого условия надо писать, т.к. тут проверяется что есть и там,и там.
//Но вот, что писать я не пойму
                        if (L2->value==L1->value) a=false;
                        L1=L1->next;
                        }
 
                    if (a==true)
                        {
                        L1=C.A[i]->last;
                        L1->next=new List;
                        L1=L1->next;
                        L1->value=L2->value;
                        L1->next=NULL;
                        C.A[i]->last=L1;
                        }
                    L2=L2->next;
                    }
                }
 
            }
        }
 
    return C;
    }
Помогите пожалуйста, не понимаю, как реализовать И.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2016, 11:42     Реализовать функцию пересечения множества
Посмотрите здесь:

Реализовать распознание объекта из некоторого множества (расширяемого) на основе вопросов и ответов C++
C++ реализовать функцию
Написать функцию булевского типа, определяющую наличие пересечения заданной прямой и заданного отрезка. C++
C++ Пользователь вводит две пары вещественных чисел: k 1,b1 и k 2,b2. Составить функцию для определения точки пересечения двух прямых y=k1x+b1 и y=k2x+b2,
C++ Заданы два множества точек на плоскости. Построить пересечения и разность множеств
C++ Написать функцию нахождения точек пересечения двух кривых, основанную на методе простой итерации
C++ Реализовать функции пересечения и объединения массивов
Как можно реализовать отрицание множества на с++? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 10:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru