使用C ++查找字符串中的第一个重复字符。

假设我们有一个字符串;我们必须找到第一个重复的字符。字符串是“ Hello Friends”,第一个重复的字符将是l。因为有两个我一个接一个。

为了解决这个问题,我们将使用哈希技术。创建一个哈希表,一个字符一个字符地扫描每个字符,如果该字符不存在,则插入一个哈希表(如果已经存在),然后返回该字符。

示例

#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

以上是 使用C ++查找字符串中的第一个重复字符。 的全部内容, 来源链接: utcz.com/z/347416.html

回到顶部