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

C++の文字列から最初の最大長の偶数単語を検索します


この問題では、コンマで区切られた単語で構成される文字列strです。私たちのタスクは、文字列から最初の最大長(単語も含む)を見つけることです

長さが最大で偶数である最大の単語「2つのスペース間の文字列」を見つける必要があります。

問題を理解するために例を見てみましょう

Input : str = "learn programming at TutorialsPoint"
Output : TutorialsPoint

説明

The string with even length is TutorialsPoint.

ソリューションアプローチ

この問題の簡単な解決策は、現在の文字列よりも長い文字列を見つけることです。 maxStringの長さを0に初期化します。

アルゴリサム

ステップ1 −文字列を繰り返し処理します。

ステップ2 −現在の単語の長さが均一で、単語の長さが最後の大きい単語よりも長いかどうかを確認します。

ステップ3 −単語を返します。

ソリューションの動作を説明するプログラム

#include <bits/stdc++.h>
using namespace std;
string findMaxEvenLenWord(string str) {
   int len = str.length();
   int i = 0; int currWordlen = 0;
   int maxWordLen = 0;
   int stringPointer = -1;
   while (i < len) {
      if (str[i] == ' ') {
         if (currWordlen % 2 == 0) {
            if (maxWordLen < currWordlen) {
               maxWordLen = currWordlen;
               stringPointer = i - currWordlen;
            }
         }
         currWordlen = 0;
      }
      else {
         currWordlen++;
      }
      i++;
   }
   if (currWordlen % 2 == 0) {
      if (maxWordLen < currWordlen) {
         maxWordLen = currWordlen; 
         stringPointer = i - currWordlen;
      }
   }
   if (stringPointer == -1)
      return "Not Found!";
   return str.substr(stringPointer, maxWordLen);
}
int main() {
   string str = "Learn programming at Tutorialspoint";
   cout<<"The maximum length even word is '"<<findMaxEvenLenWord(str)<<"'";
   return 0;
}

出力

The maximum length even word is 'Tutorialspoint'

  1. C++で文字列の最初に繰り返される単語を検索します

    この問題では、コンマで区切られた単語で構成される文字列strです。私たちのタスクは、文字列内の最初に繰り返される単語を見つけることです。 。 文字列内で繰り返される最初の単語「2つのスペースの間の文字列」を見つける必要があります。 問題を理解するために例を見てみましょう Input : str = "C program are easy to program" Output : program ソリューションアプローチ この問題の簡単な解決策は、ハッシュマップデータ構造を使用することです。最初に繰り返される単語を見つけるために、各単語とその数(文字列に出現した回数)

  2. C++を使用してN番目の偶数の長さの回文を検索します

    C + +を使用したことがある場合は、回文数について聞いたことがあるはずです。したがって、このガイドでは、適切な例を使用して、「N番目の偶数長の回文」に関するすべてを説明します。回文数は、それらを逆にした後も同じままである数です。数字だけでなく、文字を逆にしてもスペルが変わらない単語。例- 数字={1,121,131,656,1221,1551} 言葉={saas、malayalam、level、mom} 複雑に見えますが、どのシステムでも非常に簡単に実行できます。それでは、回文について簡単に説明しましょう。 N番目の偶数の長さの回文数 11,22,33,44,55,66,77,88