Java >> Tutoriel Java >  >> Tag >> String

Programme Java pour trouver les caractères en double dans une chaîne

Dans ce tutoriel, nous allons apprendre à trouver des caractères en double dans la chaîne. Mais avant d'aller plus loin, si vous n'êtes pas familier avec le concept de chaîne, consultez l'article sur les chaînes en Java.

Saisie : Saisissez la chaîne :occurrence maximale

Sortie : Les caractères en double dans la chaîne sont :

m

tu

c

r

e

Programme 1 : Rechercher les caractères en double dans une chaîne

Dans ce programme, nous verrons comment trouver les caractères en double dans la chaîne lorsque la chaîne est prédéfinie.

Algorithme

  1. Démarrer
  2. Déclarer une chaîne
  3. Initialisez-le
  4. Déclarez une variable pour compter la fréquence des caractères.
  5. Convertir la chaîne en tableau de caractères.
  6. Utilisez deux boucles for pour calculer la fréquence de chaque élément de la chaîne.
  7. Utilisez la première boucle for pour contenir les caractères de la chaîne.
  8. Initialiser le décompte à 1.
  9. Utilisez la boucle for interne pour itérer sur le reste des caractères de la chaîne.
  10. Vérifiez si le caractère apparaît à nouveau dans la chaîne.
  11. Si cela se produit, augmentez le nombre.
  12. Définissez str[j] sur 0 pour éviter de calculer les caractères visités.
  13. Vérifiez si la valeur de count est supérieure à 1 et si str[i] n'est pas égal à 0.
  14. S'il satisfait la condition ci-dessus, imprimez l'élément.
  15. Arrêtez.

Vous trouverez ci-dessous le code correspondant en langage Java.

//Java Program to find the duplicate characters in a given string
public class Main
{  
     public static void main(String[] args) 
     {  
        String str1 = "Maximum and Minimum";  
        int count;  
        System.out.println("The entered string is: "+str1);
        //Converts given string into character array  
        char str[] = str1.toCharArray();  
          
        System.out.println("Duplicate characters in a given string: ");  
        //Count the frequency of each character present in the string  
        for(int i = 0; i <str.length; i++) 
        {  
            count = 1;  
            for(int j = i+1; j <str.length; j++) 
            {  
                if(str[i] == str[j] && str[i] != ' ') 
                {  
                    count++;  
                    //Set string[j] to 0 to avoid printing visited character  
                    str[j] = '0';  
                }  
            }  
            //A character is considered as duplicate if count is greater than 1  
            if(count > 1 && str[i] != '0')  
                System.out.println(str[i]);  
        }  
    }  
}  


La chaîne saisie est :Maximum et Minimum
Caractères en double dans une chaîne donnée :
M
a
i
m
u

Programme 2 : Rechercher les caractères en double dans une chaîne

Dans ce programme, nous verrons comment trouver les caractères en double dans la chaîne lorsque la chaîne est définie par l'utilisateur. Ici, nous demanderons d'abord à l'utilisateur d'entrer la chaîne, puis nous vérifierons les éléments en double.

Algorithme

  1. Démarrer
  2. Déclarer une chaîne
  3. Demander à l'utilisateur de l'initialiser
  4. Déclarez une variable pour compter la fréquence des caractères.
  5. Convertir la chaîne en tableau de caractères.
  6. Utilisez deux boucles for pour calculer la fréquence de chaque élément de la chaîne.
  7. Utilisez la première boucle for pour contenir les caractères de la chaîne.
  8. Initialiser le décompte à 1.
  9. Utilisez la boucle for interne pour itérer sur le reste des caractères de la chaîne.
  10. Vérifiez si le caractère apparaît à nouveau dans la chaîne.
  11. Si cela se produit, augmentez le nombre.
  12. Définissez str[j] sur 0 pour éviter de calculer les caractères visités.
  13. Vérifiez si la valeur de count est supérieure à 1 et si str[i] n'est pas égal à 0.
  14. S'il satisfait la condition ci-dessus, imprimez l'élément.
  15. Arrêtez.

Vous trouverez ci-dessous le code correspondant en langage Java.

//Java Program to find the duplicate characters in a given string
import java.util.*;
public class Main
{  
     public static void main(String[] args) 
     {  
         //Take input from the user
        Scanner sc=new Scanner(System.in);  
        System.out.println("Enter the string is: ");
        String str1=sc.nextLine();
        int count;  
        //Converts given string into character array  
        char str[] = str1.toCharArray();            
        System.out.println("Duplicate characters in the given string: ");  
        //Counts each character present in the string  
        for(int i = 0; i <str.length; i++) 
        {  
            count = 1;  
            for(int j = i+1; j <str.length; j++) 
            {  
                if(str[i] == str[j] && str[i] != ' ') 
                {  
                    count++;  
                    //Set string[j] to 0 to avoid printing visited character  
                    str[j] = '0';  
                }  
            }  
            //A character is considered as duplicate if count is greater than 1  
            if(count > 1 && str[i] != '0')  
                System.out.println(str[i]);  
        }  
    }  
}  


Entrez la chaîne est :Caractères en double
Caractères en double dans la chaîne donnée :
c
a
t
e
r


Balise Java