Составление лексикографических разбиений — различия между версиями

Материал из ALL
Перейти к: навигация, поиск
(Новая страница: «'''Составление лексикографических размещений''' — это алгоритм (комбинаторика|комбинат…»)
 
м
 
(не показана 21 промежуточная версия 3 участников)
Строка 1: Строка 1:
'''Составление лексикографических размещений''' — это алгоритм ([[комбинаторика|комбинаторная]] операция) получения размещений в лексикографическом порядке.  
+
'''Составление лексикографических разбиений''' — это алгоритм ([[комбинаторика|комбинаторная]] операция) получения разбиений в лексикографическом порядке.  
 
== Обозначения ==
 
== Обозначения ==
Введём обозначения:
+
'''n''' – натуральное число;
  
'''n''' – число элементов конечного множества;
+
'''t''' – порядковый номер разбиения;
  
'''k''' – число элементов в размещении;
+
'''p<sub>j</sub>''' – '''j'''-ое натуральное слагаемое;
  
'''t''' – порядковый номер размещения;
+
'''m<sub>j</sub>''' – счётчик '''j'''-ого натурального слагаемого;
  
'''{A<sub>1</sub>,A<sub>2</sub>,…,A<sub>k</sub>}''' – размещение '''k''' номеров элементов множества из '''n''' элементов.
+
'''k''' – число натуральных слагаемых разбиения, равное сумме счётчиков;
== Алгоритм размещений ==
+
Входные данные: '''n, k'''.
+
  
[[файл:КОМ32.JPG]]
+
'''{R<sub>1</sub>,R<sub>2</sub>,…,R<sub>k</sub>}''' – разбиение числа '''n''' на '''k''' натуральных слагаемых.
 +
== Алгоритм разбиений ==
 +
Входные данные: '''n'''.
 +
 
 +
[[файл:КОМ42.JPG]]
 +
* Заметим, что для любого разбиения сумма его элементов равна числу '''n'''.
 
=== Пример ===
 
=== Пример ===
При '''n=4, k=3''' получаем 24 размещения:
+
При '''n=10''' получаем 42 разбиения:
  
[[файл:КОМ34.JPG]]
+
[[файл:КОМ44.JPG]]
== Другие алгоритмы: ==
+
== [[Комбинаторные алгоритмы|Другие алгоритмы:]] ==
*[[наибольший общий делитель]];
+
{{Список КАлг}}
*[[наименьшее общее кратное]];
+
*[[проверка кратности]];
+
*[[деление по модулю]];
+
*[[получение простых чисел]];
+
*[[разложение на множители]];
+
*[[система счисления]];
+
*[[метод математической индукции]];
+
*[[схема примитивной рекурсии]];
+
*[[машина Поста]];
+
*[[машина Тьюринга]];
+
*[[составление перестановок]];
+
*[[составление лексикографических перестановок]];
+
*[[составление сочетаний]];
+
*[[составление лексикографических сочетаний]];
+
*[[составление размещений]];
+
*[[составление лексикографических размещений]];
+
*[[составление разбиений]];
+
*[[сортировка]];
+
*[[алгоритм определения мест]].
+
 
== Ссылки ==
 
== Ссылки ==
* [[Участник:Logic-samara]]  
+
*[[Участник:Logic-samara]]  
[[Категория:Дискретная математика]] [[Категория:Алгоритмы]][[Категория:Комбинаторика]]
+
[[Категория:Дискретная математика]][[Категория:Комбинаторика]][[Категория:Алгоритмы]]

Текущая версия на 10:40, 16 января 2024

Составление лексикографических разбиений — это алгоритм (комбинаторная операция) получения разбиений в лексикографическом порядке.

Обозначения

n – натуральное число;

t – порядковый номер разбиения;

pjj-ое натуральное слагаемое;

mj – счётчик j-ого натурального слагаемого;

k – число натуральных слагаемых разбиения, равное сумме счётчиков;

{R1,R2,…,Rk} – разбиение числа n на k натуральных слагаемых.

Алгоритм разбиений

Входные данные: n.

КОМ42.JPG

  • Заметим, что для любого разбиения сумма его элементов равна числу n.

Пример

При n=10 получаем 42 разбиения:

КОМ44.JPG

Другие алгоритмы:

Шаблон:Список КАлг

Ссылки