EssayAI
Блог
Блог
Математика и алгоритмы

Числа Стирлинга первого рода: перестановки и циклы

20 июня 2026Время чтения: 8 минут
#числа Стирлинга#перестановки#циклы#комбинаторика#рекуррентная формула
Числа Стирлинга первого рода: перестановки и циклы

Числа Стирлинга первого рода - это коэффициенты, которые связывают два базовых объекта комбинаторики: обычные степени и нисходящий факториал. У них есть наглядный комбинаторный смысл - они считают перестановки с заданным числом циклов. Разберём, чем отличаются знаковая и беззнаковая версии, как работает рекуррентная формула и почему сумма всех чисел в строке равна факториалу. Ниже сразу можно собрать треугольник Стирлинга для нужного nn и проверить любое значение.

Что такое числа Стирлинга первого рода

Числа Стирлинга первого рода бывают двух видов - знаковые и беззнаковые. Беззнаковые обозначают [nk]\left[{n \atop k}\right] или c(n,k)c(n, k) и определяют как число перестановок множества из nn элементов, которые распадаются ровно на kk непересекающихся циклов. Это чисто комбинаторная величина, всегда неотрицательная.

Знаковые числа s(n,k)s(n, k) отличаются только множителем (1)nk(-1)^{n-k}:

s(n,k)=(1)nk[nk].s(n, k) = (-1)^{n-k} \left[{n \atop k}\right].

Знаковые версии появляются как коэффициенты при разложении нисходящего факториала по обычным степеням, а беззнаковые - в обратном разложении. Поэтому в задачах на циклы перестановок почти всегда работают с беззнаковыми [nk]\left[{n \atop k}\right], а знак подставляют формально, когда нужно алгебраическое тождество.

Беззнаковые числа Стирлинга первого рода как число перестановок с заданным количеством циклов
Беззнаковые числа Стирлинга первого рода как число перестановок с заданным количеством циклов

Комбинаторный смысл: перестановки и циклы

Любую перестановку можно записать в виде непересекающихся циклов. Например, перестановка nn элементов (13)(2)(45)(1\,3)(2)(4\,5) состоит из трёх циклов. Беззнаковое число [nk]\left[{n \atop k}\right] как раз и считает, сколько перестановок из nn элементов дают ровно kk таких циклов.

Крайние случаи запоминаются легко:

  • [nn]=1\left[{n \atop n}\right] = 1 - единственная перестановка из nn неподвижных точек (каждый элемент - отдельный цикл, это тождественная перестановка).
  • [n1]=(n1)!\left[{n \atop 1}\right] = (n-1)! - перестановки, образующие один большой цикл длины nn (циклических расстановок nn элементов ровно (n1)!(n-1)!).
  • [nk]=0\left[{n \atop k}\right] = 0 при k>nk > n и при k=0k = 0, n>0n > 0 - нельзя получить больше циклов, чем элементов, и нельзя обойтись нулём циклов.

Эта связь с циклами делает числа Стирлинга первого рода естественным инструментом там, где важна структура перестановки, а не просто их количество - в комбинаторике перестановок и в анализе случайных перестановок.

Полезно потренироваться на маленьком примере вручную. Возьмём множество из трёх элементов. Всего перестановок 3!=63! = 6. Из них на один цикл (расстановка по кругу) приходится [31]=2\left[{3 \atop 1}\right] = 2 перестановки: (123)(1\,2\,3) и (132)(1\,3\,2). На два цикла - [32]=3\left[{3 \atop 2}\right] = 3 перестановки, это все транспозиции с одной неподвижной точкой: (12)(3)(1\,2)(3), (13)(2)(1\,3)(2), (23)(1)(2\,3)(1). И ровно одна перестановка из трёх неподвижных точек даёт три цикла: [33]=1\left[{3 \atop 3}\right] = 1. Сумма 2+3+1=6=3!2 + 3 + 1 = 6 = 3! - все перестановки распределились по числу циклов без остатка. Именно эту картину строит гистограмма в калькуляторе выше.

Рекуррентная формула

Главный рабочий инструмент - рекуррентное соотношение. Для беззнаковых чисел оно выглядит так:

[nk]=[n1k1]+(n1)[n1k].\left[{n \atop k}\right] = \left[{n-1 \atop k-1}\right] + (n-1)\left[{n-1 \atop k}\right].

Идея вывода комбинаторная. Рассмотрим nn-й элемент. Либо он образует собственный цикл-одиночку - тогда оставшиеся n1n-1 элементов должны дать k1k-1 цикл, это слагаемое [n1k1]\left[{n-1 \atop k-1}\right]. Либо он встраивается в один из уже имеющихся циклов перестановки n1n-1 элементов с kk циклами: вставить новый элемент можно после любого из n1n-1 старых, отсюда множитель (n1)(n-1) и слагаемое (n1)[n1k](n-1)\left[{n-1 \atop k}\right].

Рекуррентная формула - это не просто способ посчитать. Каждое слагаемое отвечает за конкретный сценарий: «новый элемент сам по себе» против «новый элемент вклеен в старый цикл». Если помнить эту трактовку, формулу не надо заучивать.

Начальные условия: [00]=1\left[{0 \atop 0}\right] = 1, а [n0]=0\left[{n \atop 0}\right] = 0 и [0k]=0\left[{0 \atop k}\right] = 0 при положительных аргументах. С ними рекуррентность строит весь треугольник снизу вверх.

Треугольник Стирлинга строится рекуррентно: каждое число складывается из верхнего соседа и взвешенного соседа слева
Треугольник Стирлинга строится рекуррентно: каждое число складывается из верхнего соседа и взвешенного соседа слева

Связь с факториалом и нисходящим факториалом

Сумма всех беззнаковых чисел в строке nn равна факториалу:

k=0n[nk]=n!.\sum_{k=0}^{n} \left[{n \atop k}\right] = n!.

Это очевидно из комбинаторного смысла: каждая из n!n! перестановок имеет какое-то число циклов от 11 до nn, и мы просто группируем все перестановки по этому числу. Сумма по всем группам даёт всё множество перестановок.

Алгебраическая роль чисел Стирлинга - разложение факториальных многочленов. Беззнаковые числа дают коэффициенты восходящего факториала:

xn=x(x+1)(x+n1)=k=0n[nk]xk,x^{\overline{n}} = x(x+1)\cdots(x+n-1) = \sum_{k=0}^{n} \left[{n \atop k}\right] x^k,

а знаковые - нисходящего факториала xn=x(x1)(xn+1)x^{\underline{n}} = x(x-1)\cdots(x-n+1):

xn=k=0ns(n,k)xk.x^{\underline{n}} = \sum_{k=0}^{n} s(n, k)\, x^k.

Именно поэтому знак вводят как (1)nk(-1)^{n-k}: он переводит коэффициенты восходящего факториала в коэффициенты нисходящего. Числа Стирлинга второго рода делают обратное - раскладывают обычную степень xnx^n по нисходящим факториалам, и не путать их - частая задача на экзамене.

Проверим разложение нисходящего факториала для n=3n = 3. По определению x3=x(x1)(x2)=x33x2+2xx^{\underline{3}} = x(x-1)(x-2) = x^3 - 3x^2 + 2x. Сравнивая с ks(3,k)xk\sum_k s(3, k)\,x^k, получаем коэффициенты s(3,3)=1s(3,3) = 1, s(3,2)=3s(3,2) = -3, s(3,1)=2s(3,1) = 2. По модулю это в точности беззнаковые [3k]=1,3,2\left[{3 \atop k}\right] = 1, 3, 2 из таблицы, а знак чередуется по правилу (1)nk(-1)^{n-k}. Так знаковые и беззнаковые версии оказываются двумя сторонами одного треугольника: одна удобна для подсчёта циклов, другая - для алгебраических преобразований многочленов.

Маленький треугольник значений

Первые строки беззнаковых чисел Стирлинга первого рода удобно держать в голове:

n\k123451121132314611615245035101\begin{array}{c|cccccc} n \backslash k & 1 & 2 & 3 & 4 & 5 \\ \hline 1 & 1 & & & & \\ 2 & 1 & 1 & & & \\ 3 & 2 & 3 & 1 & & \\ 4 & 6 & 11 & 6 & 1 & \\ 5 & 24 & 50 & 35 & 10 & 1 \\ \end{array}

Проверка по рекуррентности: [42]=[31]+3[32]=2+33=11\left[{4 \atop 2}\right] = \left[{3 \atop 1}\right] + 3\cdot\left[{3 \atop 2}\right] = 2 + 3\cdot 3 = 11. Сумма строки n=4n=4: 6+11+6+1=24=4!6 + 11 + 6 + 1 = 24 = 4! - всё сходится. Калькулятор выше строит такой треугольник для любого nn и подсвечивает выбранную клетку.

Частые ошибки

  • Путают первый и второй род. Первый род считает циклы перестановок и связан с факториальными многочленами; второй род считает разбиения множества на непустые блоки. Это разные треугольники с разными рекуррентностями.
  • Забывают множитель (n1)(n-1) в рекуррентности. Записывают [nk]=[n1k1]+[n1k]\left[{n \atop k}\right] = \left[{n-1 \atop k-1}\right] + \left[{n-1 \atop k}\right] как у биномиальных коэффициентов - это неверно, второе слагаемое всегда с весом (n1)(n-1).
  • Теряют знак. В алгебраических тождествах с нисходящим факториалом нужны именно знаковые s(n,k)s(n,k); подстановка беззнаковых [nk]\left[{n \atop k}\right] даёт неправильные коэффициенты при чётном nkn-k и наоборот.
  • Считают [n0]=1\left[{n \atop 0}\right] = 1. При n>0n > 0 это ноль: перестановка непустого множества не может иметь ноль циклов. Единица только у [00]\left[{0 \atop 0}\right].
  • Берут [n1]=n!\left[{n \atop 1}\right] = n!. Правильно (n1)!(n-1)! - число циклических расстановок, а не всех перестановок.

FAQ

Чем числа Стирлинга первого рода отличаются от второго? Первый род считает перестановки по числу циклов и участвует в разложении факториальных многочленов. Второй род считает разбиения множества на непустые непомеченные блоки и участвует в разложении степеней через нисходящий факториал. Рекуррентности тоже разные: у второго рода вес kk, а не (n1)(n-1).

Почему числа называют знаковыми и беззнаковыми? Беззнаковые [nk]\left[{n \atop k}\right] - это прямой подсчёт перестановок, они всегда положительны. Знаковые s(n,k)=(1)nk[nk]s(n,k) = (-1)^{n-k}\left[{n \atop k}\right] нужны в алгебре: только с чередованием знаков коэффициенты дают именно нисходящий факториал xnx^{\underline{n}}.

Как быстро посчитать конкретное число Стирлинга? Через рекуррентность [nk]=[n1k1]+(n1)[n1k]\left[{n \atop k}\right] = \left[{n-1 \atop k-1}\right] + (n-1)\left[{n-1 \atop k}\right], строя треугольник от малых nn. Для одиночных значений помогают крайние случаи: [n1]=(n1)!\left[{n \atop 1}\right] = (n-1)! и [nn]=1\left[{n \atop n}\right] = 1.

Коротко

Числа Стирлинга первого рода считают перестановки nn элементов по числу циклов: беззнаковое [nk]\left[{n \atop k}\right] - это количество перестановок ровно с kk циклами, а знаковое s(n,k)=(1)nk[nk]s(n,k) = (-1)^{n-k}\left[{n \atop k}\right] возникает как коэффициент нисходящего факториала. Рекуррентность [nk]=[n1k1]+(n1)[n1k]\left[{n \atop k}\right] = \left[{n-1 \atop k-1}\right] + (n-1)\left[{n-1 \atop k}\right] строит весь треугольник, а сумма строки даёт n!n!. Главное - не путать их с числами второго рода и не терять вес (n1)(n-1) и знак.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также