Recursive functions are one of the programming techniques, which means that your program contains functions that you call yourself. Like iterative functions, recursive functions can be used when performing similar processing multiple times, but recursive functions can handle more complex problems by replacing them with simpler code. In this article, we will take a look at the creation of recursive functions in Python.
Recursive functions are used in the following situations.
1. Data processing
When sorting multiple data or performing repeated processing, recursive functions can be used according to the data structure.
2. Can solve some complex algorithmic problems
A common example is the "Tower of Hanoi" problem. According to a certain rule, for each change of state, a recursive function can be used to replace and process it with a simple question
3. Syntax analysis (natural language processing)
In natural language In processing, a recursive function can be used to perform the processing of breaking sentences into words.
How to create a recursive function in python?
Python allows users to create recursive functions using custom functions.
def myfunc(x): if 结束条件: return x // 进行什么样的处理 myfunc(x)
The key points to note are as follows.
Be sure to set the end condition. If there is no end condition, the recursive call will be made forever and processing will not end.
When making recursive calls, we must pay attention to the parameters. If the conditions here remain the same, the end condition cannot be correctly judged
If you feel that the content of the program is complicated, then let us consider whether it can be implemented using functions other than recursive functions.
Let's look at a specific example
In this sample program, there are two ways to confirm the return of the sum of integers 1 to n, using a recursive function and not using a recursive function.
First of all, the recursive function is not used
The code is as follows
def sum(n): ret = 0 for i in range(1, n + 1): ret += i return ret s = sum(100) print(s)
Execution result: 5050
The following is the case of using the recursive function
The code is as follows
def sum(n): if n < 1: return n return n + sum(n-1) s = sum(100) print(s)
Execution result: 5050
Summary, the above is the entire content of this article, for more exciting content, you can pay attention to other related tutorials on the PHP Chinese website! ! !
The above is the detailed content of How to create a recursive function in python. For more information, please follow other related articles on the PHP Chinese website!