Recursive function is a self-calling function. It calls itself directly or directly in the function body, but the conditions for self-calling need to be set. If the conditions are met, the function itself will be called. If not, it will stop. The self-call of this function then returns the control of the current process to the upper-layer function for execution. Maybe it is still difficult to understand if it is explained to us in this way.
For example, the code:
function test ($n){ echo $n." "; if($n>0){ test($n-1); }else{ echo ""; } echo $n." " } test(2)
The final output result of this example is 2 1 0<–>0 1 2
Let me explain why The output is like this
The first step is to execute test(2), echo 2, and then because 2>0, execute test(1), and there is still echo 2 that has not had time to execute
The second step , execute test (1), echo 1, and then because 1>0, execute test (0), and there is also echo 1 that has not had time to execute
The third step, execute test (0), echo 0, execute test (0), echo 0, now the condition of 0>0 is not satisfied, the test() function is no longer executed, but echo "", and the subsequent echo 0
is now no longer called by the function. , start to return the control of the process to the upper layer function for execution, that is, start to execute the last echo that all the test() functions just did not have time to output, the layer of 0 is 1, that is, the layer that outputs 1 1 The previous layer is 2, which means the output is 2 2. There is no previous layer, so the output content is 2 1 0<–>0 1 2
##Related reading:
php recursive algorithm: php recursive algorithm PHP tree - no recursion required: /*** Create parent node treeArray* Parameter* $ar array...
php recursive algorithm Commonly used algorithms for PHP interviews
php recursive algorithm:php recursive algorithm PHP interview Commonly used algorithms...php recursive algorithm based on PHP WeChat red envelope algorithm discussion
php recursive algorithm:php recursive algorithm based on PHP WeChat red envelope algorithm discussion : On a whim, I sent a red envelope to the alumni WeChat group. I set the total amount of the red envelope to 10 yuan, and supported 28 people to receive it randomly. ......The above is the detailed content of PHP recursive algorithm simplified. For more information, please follow other related articles on the PHP Chinese website!