Why there is this kind of relation between power and factorial?
This is well known and very useful. My father taught me the method of finite differences when I was a child, and I found your case by experiment. The main explanation is induction in two directions... If I write row $0$ as a polynomial of degree $n,$ inyour case $n=5$ and the entries are $x^5,$ then row $1$ is a polynomial of degree $n-1,$ in this case $n-1 = 4$ and $$ (x+1)^5 - x^5 = 5 x^4 + 10 x^3 + 10 x^2 + 5 x + 1. $$ The next row is, separately and then summed, $$ 5((x+1)^4 - x^4) + 10((x+1)^3 - x^3) + 10((x+1)^2 - x^2) + 5((x+1)- x) + (1-1) $$ so the result is that row $2$ has degree $3.$ Meanwhile, the coefficient of the highest degree term in each row occur as $x^5, \; 5 x^4, \; 20 x^3, \; 60 x^2, \; 120 x, \; 120.$ If you continued another row you would get all $0$'s. So this is very similar to taking ordinary calculus derivatives. Furthermore, if you begin with integer coefficients, you continue to get integer coefficients in later rows. Meanwhile, note that i have been a little careless about $x.$ In each row, $x=1$ should be the first entry, so that location goes on a diagonal, sort of backwards of what Pascal's Triangle does.
Finally, this is a guaranteed method for detecting polynomials. If you begin with a string of numbers and do this procedure, eventually you get all $0$'s. Why don't you start with a polynomial such as $5 x^3 + 7 x^2 + 11 x + 13 $ and do the same procedure? Oh, you always take the differences in the same order, even if that means the result is zero or negative. If you start throwing in absolute values this all goes wrong.
Here is one LINK