search
HomeJavaJavagetting StartedWhat is recursion in java

What is recursion in java

Dec 05, 2019 pm 03:13 PM
javarecursion

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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools