Binomial coefficient
This commit is contained in:
parent
29909293bc
commit
70bc9cdc4d
149
luku22.tex
149
luku22.tex
|
@ -1,18 +1,18 @@
|
||||||
\chapter{Combinatorics}
|
\chapter{Combinatorics}
|
||||||
|
|
||||||
\index{kombinatoriikka@kombinatoriikka}
|
\index{combinatorics}
|
||||||
|
|
||||||
\key{Kombinatoriikka} tarkoittaa yhdistelmien määrän laskemista.
|
\key{Combinatorics} studies methods for counting
|
||||||
Yleensä tavoitteena on toteuttaa laskenta
|
combinations of objects.
|
||||||
tehokkaasti niin, että jokaista yhdistelmää
|
Usually, the goal is to find a way to
|
||||||
ei tarvitse muodostaa erikseen.
|
count the combinations efficiently
|
||||||
|
without generating each combination separately.
|
||||||
|
|
||||||
Tarkastellaan esimerkkinä tehtävää,
|
As an example, let's consider a problem where
|
||||||
jossa laskettavana on,
|
our task is to calculate the number of representations
|
||||||
monellako tavalla luvun $n$ voi esittää positiivisten
|
for an integer $n$ as a sum of positive integers.
|
||||||
kokonaislukujen summana.
|
For example, there are 8 representations
|
||||||
Esimerkiksi luvun 4 voi esittää 8 tavalla
|
for the number $4$:
|
||||||
seuraavasti:
|
|
||||||
\begin{multicols}{2}
|
\begin{multicols}{2}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item $1+1+1+1$
|
\item $1+1+1+1$
|
||||||
|
@ -26,29 +26,28 @@ seuraavasti:
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{multicols}
|
\end{multicols}
|
||||||
|
|
||||||
Kombinatorisen tehtävän ratkaisun voi usein
|
A combinatorial problem can often be solved
|
||||||
laskea rekursiivisen funktion avulla.
|
using a recursive function.
|
||||||
Tässä tapauksessa voimme määritellä funktion $f(n)$,
|
In this case, we can define a function $f(n)$
|
||||||
joka laskee luvun $n$ esitystapojen määrän.
|
that counts the number of representations for $n$.
|
||||||
Esimerkiksi $f(4)=8$ yllä olevan esimerkin mukaisesti.
|
For example, $f(4)=8$ according to the above example.
|
||||||
Funktion voi laskea rekursiivisesti seuraavasti:
|
The function can be recursively calculated as follows:
|
||||||
\begin{equation*}
|
\begin{equation*}
|
||||||
f(n) = \begin{cases}
|
f(n) = \begin{cases}
|
||||||
1 & n = 1\\
|
1 & n = 1\\
|
||||||
f(1)+f(2)+\ldots+f(n-1)+1 & n > 1\\
|
f(1)+f(2)+\ldots+f(n-1)+1 & n > 1\\
|
||||||
\end{cases}
|
\end{cases}
|
||||||
\end{equation*}
|
\end{equation*}
|
||||||
Pohjatapauksena on $f(1)=1$,
|
The base case is $f(1)=1$,
|
||||||
koska luvun 1 voi esittää vain yhdellä tavalla.
|
because there is only one way to represent the number 1.
|
||||||
Rekursiivinen tapaus käy läpi
|
Otherwise, we go through all possibilities for
|
||||||
kaikki vaihtoehdot,
|
the last number in the sum.
|
||||||
mikä on summan viimeinen luku.
|
For example, in when $n=4$, the sum can end
|
||||||
Esimerkiksi tapauksessa $n=4$ summa voi päättyä
|
with $+1$, $+2$ or $+3$.
|
||||||
$+1$, $+2$ tai $+3$.
|
In addition, we also count the representation
|
||||||
Tämän lisäksi lasketaan mukaan esitystapa,
|
that only contains $n$.
|
||||||
jossa on pelkkä luku $n$.
|
|
||||||
|
|
||||||
Funktion ensimmäiset arvot ovat:
|
The first values for the function are:
|
||||||
\[
|
\[
|
||||||
\begin{array}{lcl}
|
\begin{array}{lcl}
|
||||||
f(1) & = & 1 \\
|
f(1) & = & 1 \\
|
||||||
|
@ -58,83 +57,86 @@ f(4) & = & 8 \\
|
||||||
f(5) & = & 16 \\
|
f(5) & = & 16 \\
|
||||||
\end{array}
|
\end{array}
|
||||||
\]
|
\]
|
||||||
Osoittautuu, että funktiolle on myös suljettu muoto
|
It turns out that the function also has a closed-form formula
|
||||||
\[
|
\[
|
||||||
f(n)=2^{n-1},
|
f(n)=2^{n-1},
|
||||||
\]
|
\]
|
||||||
mikä johtuu siitä, että summassa on $n-1$ mahdollista
|
which is based on the fact that there are $n-1$
|
||||||
kohtaa +-merkille ja niistä valitaan mikä tahansa osajoukko.
|
possible positions for +-signs in the sum,
|
||||||
|
and we can choose any subset of them.
|
||||||
|
|
||||||
\section{Binomikerroin}
|
\section{Binomial coefficient}
|
||||||
|
|
||||||
\index{binomikerroin@binomikerroin}
|
\index{binomial coefficient}
|
||||||
|
|
||||||
\key{Binomikerroin} ${n \choose k}$ ilmaisee,
|
A \key{binomial coefficient} ${n \choose k}$
|
||||||
monellako tavalla $n$ alkion joukosta
|
is the number of ways we can choose a subset
|
||||||
voidaan muodostaa $k$ alkion osajoukko.
|
of $k$ elements from a set of $n$ elements.
|
||||||
Esimerkiksi ${5 \choose 3}=10$,
|
For example, ${5 \choose 3}=10$,
|
||||||
koska joukosta $\{1,2,3,4,5\}$
|
because the set $\{1,2,3,4,5\}$
|
||||||
voidaan valita $10$ tavalla $3$ alkiota:
|
has 10 subsets of 3 elements:
|
||||||
\[ \{1,2,3\}, \{1,2,4\}, \{1,2,5\}, \{1,3,4\}, \{1,3,5\},
|
\[ \{1,2,3\}, \{1,2,4\}, \{1,2,5\}, \{1,3,4\}, \{1,3,5\},
|
||||||
\{1,4,5\}, \{2,3,4\}, \{2,3,5\}, \{2,4,5\}, \{3,4,5\} \]
|
\{1,4,5\}, \{2,3,4\}, \{2,3,5\}, \{2,4,5\}, \{3,4,5\} \]
|
||||||
|
|
||||||
\subsubsection{Laskutapa 1}
|
\subsubsection{Formula 1}
|
||||||
|
|
||||||
Binomikertoimen voi laskea rekursiivisesti seuraavasti:
|
Binomial coefficients can be
|
||||||
|
recursively calculated as follows:
|
||||||
|
|
||||||
\[
|
\[
|
||||||
{n \choose k} = {n-1 \choose k-1} + {n-1 \choose k}
|
{n \choose k} = {n-1 \choose k-1} + {n-1 \choose k}
|
||||||
\]
|
\]
|
||||||
|
|
||||||
Ideana rekursiossa on tarkastella tiettyä
|
The idea is to consider a fixed
|
||||||
joukon alkiota $x$.
|
element $x$ in the set.
|
||||||
Jos alkio $x$ valitaan osajoukkoon,
|
If $x$ is included in the subset,
|
||||||
täytyy vielä valita $n-1$ alkiosta $k-1$ alkiota.
|
the remaining task is to choose $k-1$
|
||||||
Jos taas alkiota $x$ ei valita osajoukkoon,
|
elements from $n-1$ elements,
|
||||||
täytyy vielä valita $n-1$ alkiosta $k$ alkiota.
|
and otherwise
|
||||||
|
the remaining task is to choose $k$ elements from $n-1$ elements.
|
||||||
Rekursion pohjatapaukset ovat seuraavat:
|
|
||||||
|
|
||||||
|
The base cases for the recursion are as follows:
|
||||||
\[
|
\[
|
||||||
{n \choose 0} = {n \choose n} = 1
|
{n \choose 0} = {n \choose n} = 1
|
||||||
\]
|
\]
|
||||||
|
|
||||||
Tämä johtuu siitä, että on aina yksi tapa
|
The reason for this is that there is always
|
||||||
muodostaa tyhjä osajoukko,
|
one way to construct an empty subset,
|
||||||
samoin kuin valita kaikki alkiot osajoukkoon.
|
or a subset that contains all the elements.
|
||||||
|
|
||||||
\subsubsection{Laskutapa 2}
|
\subsubsection{Formula 2}
|
||||||
|
|
||||||
Toinen tapa laskea binomikerroin on seuraava:
|
Another way to calculate binomial coefficients is as follows:
|
||||||
\[
|
\[
|
||||||
{n \choose k} = \frac{n!}{k!(n-k)!}.
|
{n \choose k} = \frac{n!}{k!(n-k)!}.
|
||||||
\]
|
\]
|
||||||
|
|
||||||
Kaavassa $n!$ on $n$ alkion permutaatioiden määrä.
|
There are $n!$ permutations for $n$ elements.
|
||||||
Ideana on käydä läpi kaikki permutaatiot
|
We go through all permutations and in each case
|
||||||
ja valita kussakin tapauksessa
|
select the first $k$ elements of the permutation
|
||||||
permutaation $k$ ensimmäistä alkiota osajoukkoon.
|
to the subset.
|
||||||
Koska ei ole merkitystä,
|
Since the order of the elements in the subset
|
||||||
missä järjestyksessä osajoukon alkiot
|
and outside the subset doesn't matter,
|
||||||
ja ulkopuoliset alkiot ovat,
|
the result is divided by $k!$ and $(n-k)!$
|
||||||
tulos jaetaan luvuilla $k!$ ja $(n-k)!$.
|
|
||||||
|
|
||||||
\subsubsection{Ominaisuuksia}
|
\subsubsection{Properties}
|
||||||
|
|
||||||
Binomikertoimelle pätee
|
For binomial coefficients,
|
||||||
\[
|
\[
|
||||||
{n \choose k} = {n \choose n-k},
|
{n \choose k} = {n \choose n-k},
|
||||||
\]
|
\]
|
||||||
koska $k$ alkion valinta osajoukkoon
|
because we can either select $k$
|
||||||
tarkoittaa samaa kuin että valitaan
|
elements to the subset,
|
||||||
$n-k$ alkiota osajoukon ulkopuolelle.
|
or select $n-k$ elements that
|
||||||
|
will be outside the subset.
|
||||||
|
|
||||||
Binomikerrointen summa on
|
The sum of binomial coefficients is
|
||||||
\[
|
\[
|
||||||
{n \choose 0}+{n \choose 1}+{n \choose 2}+\ldots+{n \choose n}=2^n.
|
{n \choose 0}+{n \choose 1}+{n \choose 2}+\ldots+{n \choose n}=2^n.
|
||||||
\]
|
\]
|
||||||
|
|
||||||
Nimi ''binomikerroin'' tulee siitä, että
|
The reason for the name ''binomial coefficient''
|
||||||
|
is that
|
||||||
|
|
||||||
\[ (a+b)^n =
|
\[ (a+b)^n =
|
||||||
{n \choose 0} a^n b^0 +
|
{n \choose 0} a^n b^0 +
|
||||||
|
@ -143,12 +145,13 @@ Nimi ''binomikerroin'' tulee siitä, että
|
||||||
{n \choose n-1} a^1 b^{n-1} +
|
{n \choose n-1} a^1 b^{n-1} +
|
||||||
{n \choose n} a^0 b^n. \]
|
{n \choose n} a^0 b^n. \]
|
||||||
|
|
||||||
\index{Pascalin kolmio}
|
\index{Pascal's triangle}
|
||||||
|
|
||||||
Binomikertoimet esiintyvät myös \key{Pascalin
|
Binomial coefficients also appear in
|
||||||
kolmiossa}, jonka reunoilla on lukua 1
|
\key{Pascal's triangle}
|
||||||
ja jokainen luku saadaan
|
whose border consists of 1's,
|
||||||
kahden yllä olevan luvun summana:
|
and each value is the sum of two
|
||||||
|
above values:
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tikzpicture}{0.9}
|
\begin{tikzpicture}{0.9}
|
||||||
\node at (0,0) {1};
|
\node at (0,0) {1};
|
||||||
|
|
Loading…
Reference in New Issue