Table des matières
Méthode 2
Grammaire
Algorithme
Exemple-2
Sortie
Conclusion
Maison Java javaDidacticiel Imprimer la représentation binaire d'un entier en Java en utilisant la récursivité

Imprimer la représentation binaire d'un entier en Java en utilisant la récursivité

Sep 08, 2023 pm 02:41 PM
java 递归 impression binaire

Imprimer la représentation binaire dun entier en Java en utilisant la récursivité

La récursion est une technique de programmation puissante qui fonctionne en divisant un problème en sous-problèmes plus petits et plus traitables et en appliquant le même algorithme pour les résoudre. Dans le monde de la programmation Java, la récursion s'avère être un outil précieux pour imprimer des représentations binaires d'entiers. L’équivalent binaire, exprimé dans un système numérique en base 2 avec seulement deux chiffres 0 et 1, présente un défi courant dans ce domaine.

Dans cet article, nous allons mettre en lumière les complexités de l'impression de l'équivalent binaire d'un entier en Java par récursivité. Notre exploration comprendra un examen approfondi de la syntaxe, des algorithmes et de deux méthodes différentes qui peuvent être utilisées pour accomplir cette tâche. L'approche initiale implique l'utilisation de méthodes d'assistance pour concaténer des chaînes, tandis que la seconde approche nécessite l'utilisation d'un "StringBuilder" pour une concaténation de chaînes efficace. Dans cet article, nous fournissons des exemples de code complets ainsi que des résultats pour illustrer la mise en œuvre et l'utilisation de ces méthodes.

Méthode

  • Méthode 1 - Méthode d'assistance avec concaténation de chaînes

  • Méthode 2 − StringBuilder pour la concaténation de chaînes

Grammaire

public class BinaryPrinter {
   public static void printBinary(int n) {
      if (n > 0) {
         printBinary(n / 2);
         System.out.print(n % 2);
      }
   }

   public static void main(String[] args) {
      int num = 10; // Example input
      System.out.print("Binary equivalent of " + num + " is: ");
      printBinary(num);
   }
}
Copier après la connexion

Algorithme

La complexité de l'impression de l'équivalent binaire d'un entier par récursion est la suivante -

  • Étape 1 - Créez une méthode appelée "printBinary" qui accepte un entier "n" en entrée.

  • Étape 2 - Dans la méthode "printBinary", évaluez si "n" dépasse 0.

  • Étape 3 - Si 'n' est supérieur à 0, utilisez 'n' divisé par 2 comme entrée et appelez la méthode 'printBinary' de manière récursive.

  • Étape 4 - Après l'appel récursif, générez le nombre binaire à la position actuelle en imprimant le reste de 'n' divisé par 2.

  • Étape 5 - Continuez à répéter les étapes 3 et 4 jusqu'à ce que « n » atteigne 0, ce qui servira de cas de base pour la récursion.

  • Méthode 1

    Dans cette approche innovante, nous utilisons une méthode d'assistance appelée 'printBinaryHelper', qui contient un paramètre supplémentaire marqué 'binary', qui est une chaîne. Lorsque nous appelons la méthode « printBinaryHelper » de manière récursive, nous concaténons intelligemment le reste de « n » divisé par 2 avec la chaîne « binaire » existante, créant ainsi une intégration transparente. Une fois que la valeur de « n » atteint 0, nous imprimons fièrement la chaîne « binaire » finale, qui symbolise élégamment la représentation binaire de l’entier d’entrée.

    Vous trouverez ci-dessous le code du programme correspondant.

    La traduction chinoise de

    Exemple-1

    est :

    Exemple-1

    public class BinaryPrinter {
       public static void printBinary(int n) {
          printBinaryHelper(n, "");
       }
    
       public static void printBinaryHelper(int n, String binary) {
          if (n > 0) {
             printBinaryHelper(n / 2, n % 2 + binary);
          } else {
             System.out.println("Binary equivalent: " + binary);
          }
       }
    
       public static void main(String[] args) {
          int num = 10; // Example input
          System.out.print("Binary equivalent of " + num + " is: ");
          printBinary(num);
       }
    }
    
    Copier après la connexion

    Sortie

    Binary equivalent of 10 is: Binary equivalent: 1010
    
    Copier après la connexion
    Copier après la connexion

    Méthode 2

    Dans cette approche innovante, nous utilisons 'StringBuilder' pour suivre avec précision les nombres binaires complexes tout en appelant la méthode 'printBinary' de manière récursive. « StringBuilder » s'avère être un outil de concaténation de chaînes efficace sans qu'il soit nécessaire de créer des objets chaîne supplémentaires, améliorant ainsi les performances par rapport aux méthodes traditionnelles de concaténation de chaînes. Une fois le processus récursif terminé avec succès, le « StringBuilder » est converti en une représentation sous forme de chaîne, affichant l'équivalent binaire de l'entier d'entrée, dans une démonstration fascinante de prouesses techniques.

    Vous trouverez ci-dessous le code du programme correspondant.

    La traduction chinoise de

    Exemple-2

    est :

    Exemple-2

    public class BinaryPrinter {
       public static void printBinary(int n) {
          System.out.print("Binary equivalent: ");
          StringBuilder binary = new StringBuilder();
          printBinaryHelper(n, binary);
          System.out.println(binary.toString());
       }
    
       public static void printBinaryHelper(int n, StringBuilder binary) {
          if (n > 0) {
             printBinaryHelper(n / 2, binary);
             binary.append(n % 2);
          }
       }
    
       public static void main(String[] args) {
          int num = 10; // Example input
          System.out.print("Binary equivalent of " + num + " is: ");
          printBinary(num);
       }
    }
    
    Copier après la connexion

    Sortie

    Binary equivalent of 10 is: Binary equivalent: 1010
    
    Copier après la connexion
    Copier après la connexion

    Conclusion

    La récursion est une technique puissante en programmation, montrant sa puissance dans la résolution de diverses tâches, notamment l'impression de la représentation binaire d'un entier en Java. Dans ce didacticiel complet, nous explorons deux approches différentes pour obtenir une récursivité optimale en utilisant la concaténation de chaînes et le puissant « StringBuilder ». Avec une compréhension approfondie de la syntaxe, des algorithmes et une implémentation habile de ces méthodes, vous pouvez désormais facilement utiliser la puissance de la récursion pour imprimer des représentations binaires d'entiers en Java. Lorsque vous commencez ce parcours de codage, choisissez soigneusement une approche compatible avec vos besoins uniques et tenez compte de l'impact sur les performances que la concaténation de chaînes peut avoir dans votre application. Fort de ces informations, vous pouvez maîtriser l'art de la récursivité dans la programmation Java et libérer tout le potentiel de cette technique puissante dans vos efforts de codage.

    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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Racine carrée en Java Racine carrée en Java Aug 30, 2024 pm 04:26 PM

Guide de la racine carrée en Java. Nous discutons ici du fonctionnement de Square Root en Java avec un exemple et son implémentation de code respectivement.

Nombre parfait en Java Nombre parfait en Java Aug 30, 2024 pm 04:28 PM

Guide du nombre parfait en Java. Nous discutons ici de la définition, comment vérifier le nombre parfait en Java ?, des exemples d'implémentation de code.

Générateur de nombres aléatoires en Java Générateur de nombres aléatoires en Java Aug 30, 2024 pm 04:27 PM

Guide du générateur de nombres aléatoires en Java. Nous discutons ici des fonctions en Java avec des exemples et de deux générateurs différents avec d'autres exemples.

Numéro Armstrong en Java Numéro Armstrong en Java Aug 30, 2024 pm 04:26 PM

Guide du numéro Armstrong en Java. Nous discutons ici d'une introduction au numéro d'Armstrong en Java ainsi que d'une partie du code.

Weka en Java Weka en Java Aug 30, 2024 pm 04:28 PM

Guide de Weka en Java. Nous discutons ici de l'introduction, de la façon d'utiliser Weka Java, du type de plate-forme et des avantages avec des exemples.

Numéro de Smith en Java Numéro de Smith en Java Aug 30, 2024 pm 04:28 PM

Guide du nombre de Smith en Java. Nous discutons ici de la définition, comment vérifier le numéro Smith en Java ? exemple avec implémentation de code.

Questions d'entretien chez Java Spring Questions d'entretien chez Java Spring Aug 30, 2024 pm 04:29 PM

Dans cet article, nous avons conservé les questions d'entretien Java Spring les plus posées avec leurs réponses détaillées. Pour que vous puissiez réussir l'interview.

Break or Return of Java 8 Stream Forach? Break or Return of Java 8 Stream Forach? Feb 07, 2025 pm 12:09 PM

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

See all articles