*** Пермутации [1.3.1] - наредени n-торки
А. Без повторения { 1 2 3 }
123 132 213 231 312 321
Общ брой n!
[permute.cpp]
Б. С повторения { 1 1 2 3 }
1123 1132 1213 1231 1312 1321
2113
2131 2311 3112 3121 3211
Общ брой n!/(s1!s2!...sk!),
където si! е броят на i-тия различен елемент,
участващ
в мултимножеството. В примера 4!/(2!1!1!) = 12.
*** Вариации [1.3.2] - нареден k-елементен списък измежду n
елемента (нареден)
А. Без повторения n = 3
{ 1 2 3 }, k = 2
12 13 21 23 31 32
Общ брой n!/(n - k)! В примера 3!/1 = 6.
Б. С повторения n = 3
{
1 2 3 }, k = 2
11 12 13 21 22 23 31 32
33
Общ брой nk. В примера 32 = 9.
[variate.cpp]
*** Комбинации [1.3.3] k-елементно подмножество измежду n
елемента (ненаредено)
А. Без повторения n
= 5
{ 1 2 3 4 5 }, k = 2
12 13 14 15 23 24 25 34
35 45
Общ брой n!/((n - k)!k!). В примера
5!/(3!2!)
= 10.
[comb.cpp]
Б. с повторения n = 5
{ 1 2 3 4 5 }, k = 2
11 12 13 14 15 22 23 24
25 33 34 35 44 45 55
Общ брой (n + k - 1)! / ((n - 1)! k!).
В примера 6!/(4!2!) = 15.