在 C++ 中,可以使用 std::set
或 std::unordered_set
容器来实现字符串去重。这两个容器中的元素都是唯一的,因此可以将字符串插入其中,然后将重复的字符串过滤掉。
以下是使用 std::set
进行字符串去重的示例代码:
#include <iostream>
#include <set>
#include <string>
#include <vector>
int main() {
std::vector<std::string> strs = {"apple", "banana", "orange", "apple", "banana", "grape"};
// 使用 set 去重
std::set<std::string> str_set(strs.begin(), strs.end());
// 将去重后的字符串存入 vector 中
std::vector<std::string> unique_strs(str_set.begin(), str_set.end());
// 输出去重后的字符串
for (const auto& str : unique_strs) {
std::cout << str << std::endl;
}
return 0;
}
输出结果为:
apple
banana
grape
orange
以下是使用 std::unordered_set
进行字符串去重的示例代码:
#include <iostream>
#include <unordered_set>
#include <string>
#include <vector>
int main() {
std::vector<std::string> strs = {"apple", "banana", "orange", "apple", "banana", "grape"};
// 使用 unordered_set 去重
std::unordered_set<std::string> str_set(strs.begin(), strs.end());
// 将去重后的字符串存入 vector 中
std::vector<std::string> unique_strs(str_set.begin(), str_set.end());
// 输出去重后的字符串
for (const auto& str : unique_strs) {
std::cout << str << std::endl;
}
return 0;
}
输出结果为:
apple
banana
grape
orange
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。