gpt4 book ai didi

c - 如何找到字符串中唯一字符的数量?

转载 作者:太空宇宙 更新时间:2023-11-04 05:57:30 25 4
gpt4 key购买 nike

我没有发现任何特别的东西。

我想找出一个函数来计算字符串中每个字符的出现次数,这样我就可以在长度的末尾将它们拉出来,以找出该字符串中使用了多少同类字符。

我试过嵌套循环,第一个应用,第二个扫描字符串,如果字符没有出现在字符串的其他地方,则有条件地满足该字符:

size_t CountUniqueCharacters(char *str)
{
int i,j;
char unique[CHAR_MAX];
for(i=strlen(str); i>=0; i--)
{
for(j=strlen(str); j>=0; j--)
{
if(str[i] != unique[j])
unique[j] = str[i];
}
}
return strlen(unique);
}

这不是很好。

如果您愿意限制某人键入诸如 "aaaaaaaaaaaaa" 之类的惰性名称,这将很有用。

最佳答案

这是一个简单的 C++ 解决方案。此方法具有 O(n) 复杂度:

int countDistinct(string s) 
{

unordered_map<char, int> m;

for (int i = 0; i < s.length(); i++) {
m[s[i]]++;
}

return m.size();
}

关于c - 如何找到字符串中唯一字符的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24573047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com