力扣刷题---返回word中所有不重复的单词

在这里插入图片描述


当需要从一个数据集合中去除重复元素时,set是一个很好的选择。由于其不允许存储重复的元素,因此可以很容易地实现去重功能。这在处理原始数据或进行数据分析时特别有用。
题目:
给定一个字符串数组 words,请返回一个由 words 中所有不重复单词组成的列表,并按字母顺序排序。
示例:
输入:words = [“apple”, “banana”, “apple”, “orange”, “banana”, “kiwi”]
输出:[“apple”, “banana”, “kiwi”, “orange”]
解释:去重后并按字母顺序排序得到的单词列表是 [“apple”, “banana”, “kiwi”, “orange”]。
解题思路:
1创建一个空的 set 对象,用于存储不重复的单词。
2遍历字符串数组 words,将每个单词插入到 set 中。由于 set 会自动去重,并对单词排序。
3将 set 中的单词转换为一个 vector 对象。
4返回排序后的 vector 对象作为最终结果。


#include <iostream>  
#include <vector>  
#include <set>   
#include <string>  
using namespace std;

void UniqueWords(vector<string>& v) {
	set<string> s(v.begin(), v.end());        // 利用set去重并自动排序  
	v = vector<string>{ s.begin(), s.end() }; // 将set中的单词复制到v中  
}

int main() {
	vector<string> v = { "apple", "banana", "apple", "orange", "banana", "kiwi" };
	UniqueWords(v);

	for (const auto & x : v) { //显示结果
		cout << x << " ";
	}
	cout << endl;

	return 0;
}

在这里插入图片描述

相关推荐

  1. -290.单词规律

    2024-05-26 00:34:27       55 阅读
  2. 过程发现函数

    2024-05-26 00:34:27       65 阅读
  3. 每日一30:串联所有单词子串

    2024-05-26 00:34:27       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-26 00:34:27       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-26 00:34:27       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-26 00:34:27       82 阅读
  4. Python语言-面向对象

    2024-05-26 00:34:27       91 阅读

热门阅读

  1. C++ socket epoll IO多路复用

    2024-05-26 00:34:27       37 阅读
  2. python --创建固定字符串长度,先进先出

    2024-05-26 00:34:27       32 阅读
  3. 消息队列之Pulsar、kafaka、rabbitmq、mqtt、RocketMQ

    2024-05-26 00:34:27       33 阅读
  4. Excel超级表的注意事项

    2024-05-26 00:34:27       36 阅读
  5. AI与量子计算:科技新时代的双重飞跃

    2024-05-26 00:34:27       33 阅读
  6. leetcode 2915.和为目标值的最长子序列的长度

    2024-05-26 00:34:27       33 阅读
  7. jvm中的Hotspot是什么

    2024-05-26 00:34:27       32 阅读