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

C ++を使用して、文字列内の最初に繰り返される文字を検索します。


文字列があるとします。繰り返される最初の文字を見つける必要があります。文字列は「HelloFriends」なので、最初に繰り返される文字はlになります。次々と2つのlがあるので。

これを解決するために、ハッシュ手法を使用します。ハッシュテーブルを1つ作成し、各文字を1つずつスキャンします。文字が存在しない場合はハッシュテーブルに挿入し、すでに存在する場合はその文字を返します。

#include<iostream>
#include<unordered_set>
using namespace std;
char getFirstRepeatingChar(string &s) {
   unordered_set<char> hash;
   for (int i=0; i<s.length(); i++) {
      char c = s[i];
      if (hash.find(c) != hash.end())
         return c;
      else
         hash.insert(c);
   }
   return '\0';
}
int main () {
   string str = "Hello Friends";
   cout << "First repeating character is: " << getFirstRepeatingChar(str);
}

出力

First repeating character is: l

  1. C++を使用して0の内側の1のパターンを見つける

    この記事では、いくつかの行といくつかの列の値が与えられています。 1が最初の行、最初の列、最後の行、最後の列に印刷され、0が残りの要素に印刷されるように、ボックスパターンを印刷する必要があります。例- Input : rows = 5, columns = 4 Output :    1 1 1 1    1 0 0 1    1 0 0 1    1 0 0 1    1 1 1 1 Input : rows = 8, columns = 9 Output :    1

  2. C++を使用して文字列の部分文字列の数を見つける

    この記事では、特定の文字列に形成できるサブ文字列(空ではない)の数を見つけるためのアプローチについて学習します。 Input : string = “moon” Output : 10 Explanation: Substrings are ‘m’, ‘o’, ‘o’, ‘n’, ‘mo’, ‘oo’, ‘on’, ‘moo’, ‘oon’ and &