C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で2つの文字列の一般的な文字をアルファベット順に印刷します


このプログラミング問題では、2つの文字列が与えられます。また、両方の文字列に共通する文字列のすべての文字を検索する必要があり、これらの共通文字をアルファベット順に印刷する必要があります。 。そして、一般的な文字が発生しない場合は、「NOCOMMONCHARACTERS」を印刷します。文字列にすべて小文字のアルファベットが含まれているわけではありません。

例を見てみましょう-

Input : string1 : adsfhslf
   string2 : fsrakf
Output : affs

説明 − 2つの文字列の間には、a、f、sがあります。したがって、辞書式出力は「afs」です。

Input : string1 : abcde
   string2 : glhyte
Output : No common characters

説明 −共通の文字はありません。

この問題を解決するには、文字列内の一般的な文字を見つける必要があります。そして、出力はこれらの文字列の辞書式順序になります。

アルゴリズム

この問題を解決するためのアルゴリズムは-

です。
Step 1 : Create two arrays a1[] and a2[] of size 26 each for counting the number of alphabets in the strings string1 and string2.
Step 2 : traverse a1[] and a2[]. and in sequence print all those numbers that have values in the array.

このアルゴリズムに基づいてプログラムを作成し、動作を説明しましょう-

#include<bits/stdc++.h>
using namespace std;
int main(){
   string string1 = "adjfrdggs";
   string string2 = "gktressd";
   cout<<"The strings are "<<string1<<" and "<<string2;
   cout<<"\nThe common characters are : ";
   int a1[26] = {0};
   int a2[26] = {0};
   int i , j;
   char ch;
   char ch1 = 'a';
   int k = (int)ch1, m;
   for(i = 0 ; i < string1.length() ; i++){
      a1[(int)string1[i] - k]++;
   }
   for(i = 0 ; i < string2.length() ; i++){
      a2[(int)string2[i] - k]++;
   }
   for(i = 0 ; i < 26 ; i++){
      if (a1[i] != 0 and a2[i] != 0){
         for(j = 0 ; j < min(a1[i] , a2[i]) ; j++){
            m = k + i;
            ch = (char)(k + i);
            cout << ch;
         }
      }
   }
   return 0;
}

出力

The strings are adjfrdggs and gktressd
The common characters are : dgrs

  1. Pythonの2つの文字列の一般的な単語

    2つの文字列s0とs1があり、それらが文を表しているとすると、これら2つの文の間で共有される一意の単語の数を見つける必要があります。単語は大文字と小文字を区別しないため、「tom」と「ToM」は同じ単語であることに注意する必要があります。 したがって、入力がs0 =i love pythoncoding、s1 =pythonでのコーディングは簡単ですのようにすると、2つの一般的な単語[python、coding] これを解決するには、次の手順に従います- s0とs1を小文字に変換します s0List:=s0内の単語のリスト s1List:=s1の単語のリスト s0Listとs1L

  2. 2つの文字列の共通文字をアルファベット順に出力するPythonコード

    2つのユーザー入力文字列が与えられます。私たちのタスクは、すべての一般的な文字をアルファベット順に印刷することです。 例 Input: string1: python string2: program Output: op 説明 2つの文字列に共通する文字は、o(1回)、p(1回)です。 アルゴリズム Step 1: first we take two input string. Step 2: next we will do to convert these two strings into counter dictionary. Step 3: Now find common eleme