查找在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/351438.html