No. Functional programming also works in a "predefined algorithm sequence" (that's the whole point of programming, innit).
What it does, it tries to get rid of this idea, which is brittle (i.e. difficult to get right):
You have a state (a bunch of variables with their values at some time t) that you manipulate with procedures so that at time t+1, the values of those variables has changed and the set of variables has changed.
Instead the approach is:
You have functions (machines that transform input values into output values, where the input values and output values can themselves be functions) that you apply on values to get a result (and any state is temporary and just an artifice of expressing how your function works).