Counting matchings, the modern way

Put everyone in a row, choose the $k$ brides (with order) and then marry the $j$-th bride chosen to the $j$-th groom left standing.


Let's assume the individuals are named by natural numbers between $1$ and $2k$. Order the happy couples as $(b_1, g_1), (b_2, g_2), \ldots (b_k, g_k)$ with $b_1 < b_2 < \ldots < b_k$. Then you have $2k$ choices for $g_1$, $2k-1$ choices for $g_2$ and so on giving $2k(2k-1)\ldots (k+2)(k+1)$ possibilities for the $g_i$. When you know the $g_i$ the $b_i$ are determined by the ordering.


To flesh out my comment a bit: we can count the $(2k-1)!!$ unordered pairings simply: line the $2k$ people up and number them. Now, there are $(2k-1)$ people that person 1 can be married to; there are $(2k-3)$ people that the next-smallest unmarried person can be married to; etc. Once we have our couples, we can assign a 'preferred partner' to each one independently, giving $2^k$ choices (this can be expressed easily in boolean form as 'is the smaller or larger of our pair the preferred?'). Of course from here, showing that $2^k(2k-1)!!=\frac{(2k)!}{k!}$ is a little trickier - one can pair off factors, but that's a surprisingly painful process.