Tipo isso?
bool has_unique_chars(const char *str)
{
char table[127] = {};
for (int i = 0; str[i]; i++)
table[str[i]]++;
for (int i = 32; i < 127; i++)
if (table[i] == 1)
return true;
return false;
}
Tipo isso?
bool has_unique_chars(const char *str)
{
char table[127] = {};
for (int i = 0; str[i]; i++)
table[str[i]]++;
for (int i = 32; i < 127; i++)
if (table[i] == 1)
return true;
return false;
}
Opa, quase isso, mas creio que dessa forma só vai verificar um caracter apenas, e não a string inteira, vou colocar aqui a questão completa que me foi passada:
"Implementar um algoritmo para determinar se uma string possui apenas caracteres únicos. Pode-se usar estruturas auxiliares simples. Detalhe: considere apenas strings com caracteres ascii. Ex: ”java” -> false “ABC” -> true"
Melhor ainda
bool str_has_only_unique_chars(const char *str)
{
char table[127] = {};
for (int i = 0; str[i]; i++)
if (table[str[i]])
return false;
else
table[str[i]]++;
return true;
}