Конструирование комбинаторных объектов и их подсчёт — различия между версиями
Mervap (обсуждение | вклад) |
Mervap (обсуждение | вклад) (fix seq) |
||
| Строка 5: | Строка 5: | ||
Пусть <tex dpi="130">A=\{a_{1},a_{2}, \ldots ,a_{n}\}</tex> {{---}} множество из различных объектов, <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех последовательностей из элементов <tex dpi="130">A</tex>, <tex dpi="130">W=\{w_{1},w_{2}, \ldots ,w_{m}\}</tex> {{---}} количество объектов веса <tex dpi="130">\{1 \ldots m\}</tex>. Тогда '''количество последовательностей''' веса <tex dpi="130">n</tex> можно вычислить как: | Пусть <tex dpi="130">A=\{a_{1},a_{2}, \ldots ,a_{n}\}</tex> {{---}} множество из различных объектов, <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех последовательностей из элементов <tex dpi="130">A</tex>, <tex dpi="130">W=\{w_{1},w_{2}, \ldots ,w_{m}\}</tex> {{---}} количество объектов веса <tex dpi="130">\{1 \ldots m\}</tex>. Тогда '''количество последовательностей''' веса <tex dpi="130">n</tex> можно вычислить как: | ||
| − | <tex dpi="150">S_{n}=\sum_{i=1}^{n} w_{i} S_{n- | + | <tex dpi="150">S_{n}=\sum_{i=1}^{n} w_{i} S_{n-i}</tex>. |
}} | }} | ||
| Строка 11: | Строка 11: | ||
Пусть <tex dpi="130">A=\{0, 1\}</tex>, <tex dpi="130">W=\{2, 0 \ldots 0\}</tex>, <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех [[Комбинаторные объекты#Битовые вектора|битовых векторов]]. | Пусть <tex dpi="130">A=\{0, 1\}</tex>, <tex dpi="130">W=\{2, 0 \ldots 0\}</tex>, <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех [[Комбинаторные объекты#Битовые вектора|битовых векторов]]. | ||
| − | Тогда, <tex dpi="150">S_{n}=\sum_{i=1}^{n} w_{i} S_{n- | + | Тогда, <tex dpi="150">S_{n}=\sum_{i=1}^{n} w_{i} S_{n-i}=2S_{n-1}=2^{n}</tex>. |
===Подсчет Seq из маленьких и больших элементов=== | ===Подсчет Seq из маленьких и больших элементов=== | ||
| Строка 21: | Строка 21: | ||
Пусть <tex dpi="130">T_{n}</tex> {{---}} количество таких деревьев с <tex dpi="130">n</tex> вершинами, <tex dpi="130">T_{0} = 1</tex>. <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех последовательностей из данных деревьев. <tex dpi="130">S_{n}</tex> {{---}} количество последовательностей с суммарным количество вершин <tex dpi="130">n</tex>. Чтобы получить дерево из <tex dpi="130">n</tex> вершин достаточно взять <tex dpi="130">1</tex> вершину и подвесить к ней последовательность деревьев с суммарным количеством вершин <tex dpi="130">n-1</tex>. Тогда: | Пусть <tex dpi="130">T_{n}</tex> {{---}} количество таких деревьев с <tex dpi="130">n</tex> вершинами, <tex dpi="130">T_{0} = 1</tex>. <tex dpi="130">S=Seq(A)</tex> {{---}} множество всех последовательностей из данных деревьев. <tex dpi="130">S_{n}</tex> {{---}} количество последовательностей с суммарным количество вершин <tex dpi="130">n</tex>. Чтобы получить дерево из <tex dpi="130">n</tex> вершин достаточно взять <tex dpi="130">1</tex> вершину и подвесить к ней последовательность деревьев с суммарным количеством вершин <tex dpi="130">n-1</tex>. Тогда: | ||
:<tex dpi="150">T_{n}=S_{n-1}</tex>. | :<tex dpi="150">T_{n}=S_{n-1}</tex>. | ||
| − | :<tex dpi="150">S_{n}=\sum_{i=1}^{n} T_{i} S_{n-1}=C_{n}</tex>, где <tex dpi="150">C_{n}</tex> {{---}} <tex dpi="150">n</tex>-ое [[Числа Каталана|число Каталана]] | + | :<tex dpi="150">S_{n}=\sum_{i=1}^{n} T_{i} S_{n-i}=\sum_{i=1}^{n} S_{i-1} S_{n-i}=\sum_{i=0}^{n-1} S_{i} S_{n-i-1}=C_{n}</tex>, где <tex dpi="150">C_{n}</tex> {{---}} <tex dpi="150">n</tex>-ое [[Числа Каталана|число Каталана]] |
[[File:Ordered_Rooted_Trees.png|700px]] | [[File:Ordered_Rooted_Trees.png|700px]] | ||
Версия 09:46, 26 декабря 2017
Последовательности(Seq)
| Утверждение: |
Пусть — множество из различных объектов, — множество всех последовательностей из элементов , — количество объектов веса . Тогда количество последовательностей веса можно вычислить как:
. |
Подсчет битовых векторов длины
Пусть , , — множество всех битовых векторов.
Тогда, .
Подсчет Seq из маленьких и больших элементов
Пусть , , — множество всех последовательностей из маленьких и больших элементов .
Тогда, , где — -ое число Фибоначчи [1].
Подсчет подвешенных непомеченных деревьев с порядком на детях
Пусть — количество таких деревьев с вершинами, . — множество всех последовательностей из данных деревьев. — количество последовательностей с суммарным количество вершин . Чтобы получить дерево из вершин достаточно взять вершину и подвесить к ней последовательность деревьев с суммарным количеством вершин . Тогда:
- .
- , где — -ое число Каталана
Множества(PSet)
| Утверждение: |
Пусть — множество из различных объектов, — множество всех множеств объектов, составленных из элементов , — количество объектов веса , составленных из элементов , . Тогда количество множеств из объектов суммарного веса можно вычислить как , где — количество таких множеств, что они содержат объекты суммарного веса . |
Количество PSet из элементов или
Пусть , — множество всех множеств из , , . Тогда , где
- Для ,
Количество разбиений на слагаемые
Пусть , — множество всех разбиений на слагаемые, , . Тогда,
- , где , что, как не сложно заметить, соответствует формуле, полученной методом динамического программирования.
Мультимножества(MSet)
| Утверждение: |
Пусть — множество из различных объектов, — множество всех мультимножеств объектов, составленных из элементов , — количество объектов веса , составленных из элементов , . Тогда количество мультимножеств из объектов суммарного веса можно вычислить как , где — количество таких мультимножеств, что они содержат объекты суммарного веса не более . |
Количество MSet из элементов или
Пусть , — множество всех множеств из , , .
- Тогда, , где
Подсчет подвешенных непомеченных деревьев без порядка на детях
Пусть — количество таких деревьев с вершинами, . — множество всех лесов из данных деревьев, так как лес можно интерпретировать как мультимножество из деревьев. — количество лесов с суммарным количество вершин . — количество лесов из вершин, таких что они содержат не более чем вершин. Чтобы получить дерево из вершин достаточно взять вершину и подвесить к ней лес деревьев с суммарным количеством вершин . Тогда:
- .
- .
Количество таких деревьев с вершинами образуют последовательность [2]