To Construct a divided-difference table using the given value for x and f(x),
This solution table seems so confusing to me
i understood how the value of f1[] was calulated (-1-(-7))/(1-(-1)) = 3 and the same way for others. But using the same rule how the value of f2[], f3[], f4[] have been calculated?


Are you familiar with the $f[x_1, x_2, \dots, x_k]$ notation for divided differences? Using this notation makes it easier to answer the question. If this is unfamiliar, this link does a good job of describing it.
The values of the rest of the table are calculated similarly to the first column. In general, the rule is $f[x_k,x_{k+1},\dots,x_n]= \frac{f[x_{k+1},\dots,x_n] - f[x_k,\dots, x_{n-1}]}{x_n-x_k}$. We can use this notation to compute the entries of the $f^1[]$ column, like you have already done: $$3 = f[-1,1] = \frac{f[1]-f[-1]}{1-(-1)} = \frac{-1-(-7)}{1-(-1)}.$$
Now, let's extend this idea to calculate the values of the $f^2[]$ column. We have $$ f[-1,1,2] = \frac{f[1,2] -f[-1,1]}{2 - (-1)} = \frac{9-3}{3} = 2,$$ which is indeed the first entry of the $f^2[]$ column.