Безплатно обучение · 18 Юни, 19:00Регистрирай се
КурсМатематика за програмисти: 6 фундаментални теми за tech и data интервюта

Combinatorics

Пермутации, вариации, комбинации и биномни коефициенти - четирите основни понятия зад умното броене.

Lecture notes
Старт

Какво е комбинаторика

Хората най-често свързват комбинаториката с "колко комбинации са възможни". Това не е грешно, но не е цялата истина. Истината е, че комбинаториката е умно броене - намираш начин да преброиш голям брой възможности, без да ги разписваш една по една. Това е цялата игра.

Един принцип, четири инструмента

Пермутации, вариации, комбинации, биномни коефициенти - всичко това са различни начини за умно броене. Не са четири отделни теми - четири погледа към едно и също нещо.

Пример 1

9 приятели се нареждат в редица

Девет приятели се събират и трябва да се наредят един след друг. Различната подредба значи различна игра. Колко различни подредби има? Това са пермутации.

На първа позиция може да стои всеки от 9-те. На втора - всеки без този, който вече е първи, тоест 8. На трета - 7. И така до 1. Като ги умножим: 9 × 8 × 7 × ... × 1 = 9! = 362,880.

Защо умножаваме, а не събираме?

Защото за всяка от 9-те възможности на първа позиция, на втора има 8 различни. И за всяка от тези 9 × 8 = 72 двойки, на трета има 7 различни. Умножаването "разклонява" възможностите - не ги дублира.

Защо n!

Защо n! - градим от ниско нагоре

Най-лесно се вижда, ако започнем с малък пример и добавяме по една буква. С 1 буква - 1 начин. С 2 букви (AB) - 2 начина (AB, BA). Сега добавяме C - можем да я сложим на 3 различни места във всяка от 2-те съществуващи подредби. Стават 2 × 3 = 6. Добавяме D - 4 нови места в всяка от 6-те. Стават 24. И така n факториал.

6
3!
3 елемента · n × (n-1) × ...
120
5!
5 елемента · вече двуцифрено
5K
7!
7 елемента · 5,040
363K
9!
9 елемента · 362,880
Пример 2

Гардеробът: колко аутфита

Имаш 4 чифта обувки, 8 дънки, 6 блузи, 5 якета и 3 диадеми. Колко различни аутфита можеш да направиш?

Всеки чифт обувки можеш да комбинираш с всеки чифт дънки. Всяка такава двойка - с всяка блуза. И така нататък. 4 × 8 × 6 × 5 × 3 = 2,880 различни аутфита.

9 години без повторение

2,880 аутфита, ако обличаш един всеки ден, са почти 9 години без да повтаряш нито една комбинация. Само от 4 обувки и 8 дънки.

Aha-моментът

Двете задачи са едни и същи

Изглеждат различно: едната дава 9! = 362,880, другата 2,880. Но и двете са просто умножение на броя възможности на всяка позиция. В първата задача възможностите на всяка следваща позиция падат с 1 (защото вече сме сложили някого). Във втората всяка позиция има своя независим брой опции (обувките не зависят от дънките).

Всичко в крайна сметка опира до умно броене.

Терминология

Пермутации, комбинации, вариации

Пермутации

Всички участват, редът има значение

9 приятели се нареждат в редица. Всички 9 участват, различната подредба = различна пермутация. Брой: n!

Комбинации

Подмножество, редът няма значение

Избираш k обекта от n, но не ти пука в какъв ред. "Обувки + дънки + блуза" е същата комбинация, независимо коя дрешка си извадил първа. Брой: n над k = n! / (k! × (n-k)!)

Вариации

Подмножество, редът има значение

Като комбинации, но редът има значение. "Обуй чорапи, после обувки" е различна вариация от "обуй обувки, после чорапи". Брой: n! / (n-k)!

Биномни коефициенти

n над k - крайъгълният камък

Биномният коефициент "n над k" брои на колко начина можеш да избереш k обекта от n. Формулата:

n над k = n! / (k! × (n - k)!)

Пример: 100 играча, избираш 11 за футболен отбор. Възможности: 100 над 11 = 100! / (11! × 89!). Винаги: n ≥ k.

И двете ни задачи могат да се препишат с биномни коефициенти. 9 приятели в редица = (9 над 1) × (8 над 1) × ... × (1 над 1) = 9!. Гардеробът = (4 над 1) × (8 над 1) × (6 над 1) × (5 над 1) × (3 над 1) = 2,880. Същото нещо, друг език.

Как се учи това

Малки примери, после големи

Комбинаториката не идва за час. На мен ми отне години и решаване на стотици задачи преди да усетя кога умножавам, кога събирам. Универсалният трик: винаги си прави малък пример с 2-3 елемента, който можеш да преброиш на пръсти. Виж формулата на този малък пример. После го обобщи. Сложните задачи изглеждат сложни точно защото е трудно да измислиш малък пример - но и за тях съществува.

Не очаквай "една формула за всичко"

Комбинаториката е набор от инструменти, не една формула. Развива се с практика. Реши 50-100 задачи и кои инструменти подхождат кога ще стане очевидно.

Допълнителни ресурси

Визуално обяснение на ключовите понятия. Полезно ако формулите ти изглеждат сухи.

Обяснение на n над k с интуиция, не само деривация. Текст + интерактивни упражнения.

Следва

Лекция 3: Vectors

Премиера: вторник, 2 юни 2026

Какво е вектор, защо AI/ML светът е залят с векторни бази данни и какво всъщност значи "ембединг". Премиера: 2 юни 2026.

Към следващата лекция