Home  >  Article  >  Java  >  What is recursion in java

What is recursion in java

王林
王林Original
2019-12-05 15:13:123058browse

What is recursion in java

What is recursion

Recursion as an algorithm is widely used in programming languages. It refers to the function/process/subprogram that directly or Reentrancy caused by indirectly calling itself.

Recursive algorithms are generally used to solve three types of problems:

a. The definition of data is recursively defined. (Fibonacci (Fibonacci) function)

b. The problem solution is implemented by a recursive algorithm. (Traceback)

c. The structural form of data is defined recursively. (Tree traversal, graph search)

Learning video tutorial sharing:java teaching video

Example:

This is an example of arrangement, What it does is sort all the elements in an input string and output

. For example: if the parameter you give is "abc", the program will output: abc acb bac bca cab cba a

The exit of the algorithm is: low=high, that is, when there is only one arrangement element given now.

The approximation process of the algorithm: first determine the first element of the arrangement, which is the element represented by i in the loop, then low+1 starts to reduce the arrangement elements, and so on, until low=high

Examples are as follows:

public class Foo {
    public static void main(String[] args) {
        permute(“abc”);
    }
    public static void permute(String str) {
        char[] strArray = str.toCharArray();
        permute(strArray, 0, strArray.length – 1);
    }
    public static void permute(char[] list, int low, int high) {
    int i;
    if (low == high) {
        String cout = “”;
        for (i = 0; i <= high; i++){
            cout += list[i];
        System.out.println(cout);
        }
    }else {
    for (i = low; i <= high; i++) {
        char temp = list[low];
        list[low] = list[i];
        list[i] = temp;
        permute(list, low + 1, high);
        temp = list[low];
        list[low] = list[i];
        list[i] = temp;
    }
    }
    }
}

Recommended related articles and tutorials: Introduction to java programming

The above is the detailed content of What is recursion in java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:what is api in javaNext article:what is api in java