使用递归算法，计算给定整数的阶乘。
5
5的阶乘可以通过递归算法计算如下：

```
def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)

print(factorial(5))  # 输出 120
```

首先判断n是否为0，若为0则返回1，否则递归调用函数自身来计算n-1的阶乘，然后将n和n-1的阶乘相乘。