implementing permutation and combination recursively
The number of permutations of $n$ distinct objects is $n!$. 
The number of $k$ selections out of $n$ distinct objects is $\binom{n}{k}$ known also as a binomial coefficient. Recursive definition of these numbers are trivial: 
$$n! = n(n-1)!$$
$$\text{so if } f(n) = n! \text{ then } f(n) = n\times f(n-1), f(0) = 1$$ 
For binomial coefficients 
$${\binom {n}{k}}={\binom{n-1}{k-1}}+{\binom{n-1}{k}}$$
or
$$ b(n,k) = b(n-1, k-1)+b(n-1, k)$$
where 
$$b(n,n)=1 = b(n,0)=1 \text{ and } b(n,k)=0 \text{ for } n &lt; k$$ 

If you want approximate value without too much computation then you may check the Stirling's approximation.

Proof of $${\binom {n}{k}}={\binom{n-1}{k-1}}+{\binom{n-1}{k}}$$
You can prove it using a combinatorial argument or algebraic. The algebraic one is tedious (you need to manipulate factorials). So let's consider a combinatorial proof. 

Assume we have $n$ people, numbered from $1$ to $n$, and want to create a team consisting of $k$ people. There are exactly ${\binom {n}{k}}$ ways to create a team, i.e, $k$ people out of total $n$. Consider the first member, number $1$. There are two possibilities: either include her or leave her out. 


If we choose that member then we need to choose additional $k-1$
people out of remaining $n-1$ people which is equal to $\binom{n-1}{k-1}$. 
If we leave that member out then we have to select $k$ out of $n-1$
people which equal to $\binom{n-1}{k}$. 


Since these both options result in different teams the total number of teams is 
$$\binom{n-1}{k-1} + \binom{n-1}{k} $$