Найти все возможные ключи-кандидаты из набора суперключей? - PullRequest
0 голосов
/ 28 сентября 2018

Напишите программу, которая может вводить данные из набора суперключей и выводить все возможные ключи-кандидаты из ввода в выходной файл (называемый «ключ-кандидат»).Суперключи одного примера выглядят следующим образом: ABCF CDF ACDF BCDF ABCDF ABCEF CDEF ACDEF BCDEF ABCDEF

Выход, содержащий все возможные ключи-кандидаты: ABCF CDF

В примере, который я не понимаюКак получить тот результат от суперключей, любая информация будет полезна.Спасибо

1 Ответ

0 голосов
/ 28 сентября 2018

Я думаю, что если предоставлены суперключи все , то возможные суперключи отношения, алгоритм для поиска среди них ключей-кандидатов следующий:

Рассмотрим пару суперключей S1, S2.Если S1 содержится в S2, исключить S2.Если S2 содержится в S1, исключить S1.В противном случае сохраните оба.

Повторяйте операцию для всех пар, пока не удастся удалить суперключ.Остальные должны быть ключами-кандидатами отношения.

...