Maison > Java > Javacommencer > Qu'est-ce que la récursivité en Java

Qu'est-ce que la récursivité en Java

王林
Libérer: 2019-12-05 15:13:12
original
3148 Les gens l'ont consulté

Qu'est-ce que la récursivité en Java

Qu'est-ce que la récursion

La récursion est largement utilisée dans les langages de programmation en tant qu'algorithme. Elle fait référence à la réentrance directe ou provoquée par l'appel indirect.

Les algorithmes récursifs sont généralement utilisés pour résoudre trois types de problèmes :

a La définition des données est définie de manière récursive. (Fonction Fibonacci (Fibonacci))

b. La solution du problème est implémentée par un algorithme récursif. (Retour arrière)

c. La forme structurelle des données est définie de manière récursive. (Parcours d'arbres, recherche de graphiques)

Partage de didacticiels vidéo d'apprentissage : Vidéo d'enseignement Java

Exemple :

Ceci est un exemple d'arrangement, qu'est-ce que c'est ce que fait est de trier tous les éléments d'une chaîne d'entrée et de sortie

Par exemple : si le paramètre que vous donnez est "abc", le programme affichera : abc acb bac bca cab cba a

La sortie de l'algorithme est : low=high, c'est-à-dire lorsqu'il n'y a qu'un seul élément d'arrangement donné maintenant.

Le processus d'approximation de l'algorithme : déterminez d'abord le premier élément de l'arrangement, qui est l'élément représenté par i dans la boucle, puis low + 1 commence à réduire les éléments de l'arrangement, et ainsi de suite, jusqu'à ce que faible = élevé Les exemples sont les suivants :

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;
    }
    }
    }
}
Copier après la connexion

Articles et didacticiels connexes recommandés :

Introduction à la programmation Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal