程序员面试金典——11.2变位词排序
Solution1:
参考网址:https://www.nowcoder.com/profile/845063/codeBookDetail?submissionId=12676002
知识点:利用set中count函数的功能,查找是否存在某个值
class SortString {
public:
vector<string> sortStrings(vector<string> str, int n) {
// write code here
sort(str.begin(), str.end());
vector<string> res;
set<string> str_set;
for(int i = 0; i < str.size(); i++) {
string temp = str[i];
sort(temp.begin(), temp.end());
if(str_set.count(temp) == 0) {
str_set.insert(temp);
res.push_back(str[i]);
}
}
return res;
}
};
本文介绍了一种通过排序字符串并使用set数据结构来去除重复变位词的算法。该算法首先将输入的字符串数组排序,然后对每个字符串进行内部排序,并检查是否已存在相同排序后的字符串。如果不存在,则将原始字符串添加到结果集中。这种方法有效避免了重复变位词的出现。

被折叠的 条评论
为什么被折叠?



