Составление следующего сочетания с повторениями
Перейти к навигации
Перейти к поиску
Составление следующего сочетания с повторениями — это алгоритм (комбинаторная операция) получения для сочетания с повторениями следующего в лексикографическом порядке сочетания с повторениями.
Обозначения[править]
Введём обозначения:
n — число элементов конечного множества;
k — число элементов в сочетании с повторениями;
{C1,C2,…,Ck} — сочетание с повторениями k номеров элементов множества из n элементов.
Алгоритм сочетаний с повторениями[править]
Входные данные: n; k; {C1,C2,…,Ck}.
- Сортировка {C1,C2,…,Ck} по возрастанию.
- i = k, C0 = 0.
- Если Ci = n, то i = i − 1 и идти к 3.
- Ci = Ci + 1; j = i + 1.
- Cj = Cj−1; j = j + 1.
- Если j ≤ k, то идти к 5.
- {C1,C2,…,Ck} — сочетание с повторениями.
Выходные данные: {C1,C2,…,Ck}.
- Заметим, что алгоритм для лексикографически последнего сочетания с повторениями даёт, как следующее, первое сочетание с повторениями.
Другие алгоритмы:[править]
- составление перестановок;
- составление лексикографических перестановок;
- составление следующей перестановки;
- составление сочетаний;
- составление лексикографических сочетаний;
- составление следующего сочетания;
- составление размещений;
- составление лексикографических размещений;
- составление следующего размещения;
- составление разбиений;
- составление лексикографических разбиений;
- составление следующего разбиения;
- составление распределений;
- составление лексикографических распределений;
- составление следующего распределения;
- составление лексикографических перестановок с повторениями;
- составление следующей перестановки с повторениями;
- составление лексикографических сочетаний с повторениями;
- составление следующего сочетания с повторениями;
- составление лексикографических размещений с повторениями;
- составление следующего размещения с повторениями.