
- •Оглавление
- •1. Множества
- •1.1. Основные понятия
- •1.2. Способы задания множеств
- •1.3. Операции над множествами
- •Приоритеты операций над множествами
- •1.4. Свойства операций над множествами
- •1.5. Методы доказательства теоретико-множественных тождеств
- •1.5.1. Метод двух включений
- •1.5.2. Метод эквивалентных преобразований
- •1.5.3. Метод характеристических функций
- •1.5.4. Метод логических функций
- •1.5.5. Теоретико-множественный метод
- •1.6. Способы представления множества в памяти эвм
- •1.7. Алгоритмы реализации операций над множествами
- •Практическое занятие 1.1 Операции над множествами
- •Задания
- •Варианты заданий
- •Практическое занятие 1.2 Теоретико-множественные тождества
- •Задания
- •Варианты заданий
- •Контрольные вопросы
- •2. Комбинаторные объекты
- •2.1. Введение
- •2.2. Метод поиска с возвращением
- •2.3. Подмножества
- •2.4. Перестановки
- •2.5. Размещения
- •2.6. Размещения с повторениями
- •2.7. Сочетания
- •2.8. Перестановки с повторениями
- •2.9. Сочетания с повторениями
- •2.10. Упорядоченные разбиения множества
- •2.11. Разбиения множества
- •2.12. Использование алгоритмов порождения комбинаторных объектов при проектировании полнопереборных алгоритмов решения задач выбора
- •2.13. О неэффективности полнопереборных алгоритмов. Пример
- •Времена обработки деталей на станках a и b
- •Времена окончания обработки деталей на станках a и b
- •Времена окончания обработки деталей на станках a и b
- •Времена окончания обработки деталей на станках a и b
- •Практическое занятие 2.1 Алгоритмы порождения комбинаторных объектов
- •Задания
- •Практическое занятие 2.2 Разбиения множеств
- •Задания
- •Количество упорядоченных разбиений
- •Практическое занятие 2.3
- •Задачи выбора
- •Цель занятия: приобретение практических навыков в использовании алгоритмов порождения комбинаторных объектов при проектировании алгоритмов решения задач выбора.
- •Задания
- •Варианты заданий
- •Контрольные вопросы
- •Библиографический список
Контрольные вопросы
1.Что называется комбинаторным объектом?
2. В чём заключается правило произведения? Для чего, когда и как его применять?
3. В чём заключается метод поиска с возвращением?
4. Изобразите общий рекурсивный алгоритм поиска с возвращением в виде блок-схемы.
5. Изобразите общий итеративный алгоритм поиска с возвращением в виде блок-схемы.
6. Докажите теорему о количестве подмножеств n-элементного множества.
7. Опишите алгоритм порождения подмножеств. Можете ли вы пред-ложить другие алгоритмы порождения подмножеств?
8. Дайте определение перестановки.
9. Докажите теорему о количестве перестановок n-элементного множества.
10. Опишите алгоритм порождения перестановок. Предложите итеративный алгоритм порождения перестановок, используя метод поиска с возвращением.
11. Дайте определение размещению.
12. Докажите теорему о количестве размещений n-элементного множества по k местам.
13. Опишите алгоритм порождения размещений. Предложите итеративный алгоритм порождения размещений, используя метод поиска с возвращением.
14. Дайте определение размещению с повторениями.
15. Докажите теорему о количестве размещений с повторениями n-элементного множества по k местам.
16. Опишите алгоритм порождения размещений с повторениями. Предложите итеративный алгоритм порождения размещений с повторениями, используя метод поиска с возвращением.
17. Дайте определение сочетанию.
18. Докажите теорему о количестве сочетаний из n по k.
19. Опишите алгоритм порождения сочетаний. Предложите итеративный алгоритм порождения сочетаний, используя метод поиска с возвращением.
20. Предложите алгоритм порождения подмножеств в порядке увеличения (уменьшения) мощности.
21. Дайте определение мультимножеству, мощности мультимножества, кратности элемента.
22. Предложите способы хранения мультимножества в памяти ЭВМ.
23. Как реализовать операцию разности мультимножеств?
24. Дайте определение перестановки с повторениями.
25. Докажите теорему о количестве перестановок с повторениями.
26. Опишите алгоритм порождения перестановок с повторениями.
27. Дайте определение сочетания с повторениями.
28. Докажите теорему о количестве сочетаний с повторениями из n элементов по k.
29. Опишите алгоритм порождения сочетаний с повторениями.
30. Предложите алгоритм порождения сочетаний с повторениями исходя из доказательства теоремы о количестве сочетаний с повторениями из n элементов по k.
31. Дайте определение упорядоченному разбиению.
32. Докажите теорему о количестве упорядоченных разбиений n-эле-ментного множества на k подмножеств с мощностями (n1,n2,…,nk).
33. Опишите алгоритм порождения упорядоченных разбиений n-эле-ментного множества на k подмножеств с мощностями (n1,n2,…,nk).
34. Докажите теорему о количестве упорядоченных разбиений n-эле-ментного множества на k подмножеств с мощностями {n1,n2,…,nk}.
35. Опишите алгоритм порождения упорядоченных разбиений n-эле-ментного множества на k подмножеств с мощностями {n1,n2,…,nk}.
36. Дайте определение композиции натурального числа n из k частей с ограничением ni>0.
37. Докажите теорему о количестве композиций натурального числа n из k частей с ограничением ni>0.
38. Как можно порождать композиции натурального числа n из k частей с ограничением ni>0? Приведите алгоритмы порождения.
39. Докажите теорему о количестве всех упорядоченных разбиений n-элементного множества на k подмножеств.
40. Опишите алгоритм порождения всех упорядоченных разбиений n-элементного множества на k подмножеств.
41. Докажите теорему о количестве всех упорядоченных разбиений n-элементного множества.
42. Опишите алгоритм порождения всех упорядоченных разбиений n-элементного множества.
43. Дайте определение разбиению множества. Чем оно отличается от упорядоченного разбиения?
44. Докажите теорему о количестве разбиений n-элементного множества на k подмножеств с мощностями {n1,n2,…,nk}.
45. Опишите алгоритм порождения разбиений n-элементного множества на k подмножеств с мощностями {n1,n2,…,nk}.
46. Докажите теорему о количестве разбиений n-элементного множества на k подмножеств.
47. Используя литературу, определите, как можно вычислить количество разбиений n-элементного множества на k подмножеств, как называется это число?
48. Дайте определение разбиению натурального числа n на k частей.
49. Опишите алгоритм порождения разбиений натурального числа n на k частей.
50. Опишите алгоритм порождения всех разбиений n-элементного множества на k подмножеств.
51. Докажите теорему о количестве всех разбиений n-элементного множества.
52. Используя литературу, определите, как можно вычислить количество всех разбиений n-элементного множества, как называется это число?
53. Опишите алгоритм порождения всех разбиений n-элементного множества.
54. Какие задачи относятся к задачам выбора? Что характерно для задач выбора?
55. Что называют траекториями задачи выбора?
56. Что называют функционалом траектории, зачем он нужен?
57. В чём заключается проектирование алгоритма решения задачи выбора с использованием алгоритмов порождения комбинаторных объектов?
58. Как преобразовать алгоритм порождения комбинаторных объектов в алгоритм решения задачи выбора?