查詢一個字串中第一個重複出現的字元(C++)
假設我們有一個字串,我們需要找到第一個重複出現的字元。如果字串是"Hello Friends",第一個重複出現的字元將是 l。因為有兩個 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
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP