Конструирование комбинаторных объектов и их подсчёт — различия между версиями
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]
вершинами образуют последовательность