5
$\begingroup$

Suppose I have a stack and I want to find the permutations of numbers 1,2,3,...n.

I can push and pop. e.g. if n=2: push,pop,push,pop 1,2 and push,push,pop,pop 2,1

if n=4 I can only get 14 from the 24 permutations using the stack.. Does anyone know any function F(n) that could produce the number of permutations the stack (only one) can produce? eg f(1)=1

f(2)=2

f(4)=14

Thank you

1 Answers 1

7

The number corresponds to the Catalan Numbers which are of the form $\displaystyle \frac{{2n \choose n}}{n+1}$.

I believe this particular problem is an exercise Knuth's Art of Programming Volume I.

For a hint of proof: Number of pushes $\ge$ Number of pops in any prefix of the string of pushes and pops.