Cet algorithme est pour référence uniquement. Xiaocai ne comprend essentiellement pas les algorithmes avancés et ne peut l'exprimer qu'avec les idées les plus simples.
La copie de code est la suivante:
// découvrez le premier caractère non répété de la chaîne
// FirstUniqueChar ("VDCTDVC"); -> t
fonction FirstUniquechar (str) {
var str = str || "",
i = 0,
k = "",
_char = "",
Charmap = {},
result = {name: "", index: str.length};
pour (i = 0; i <str.length; i ++) {
_char = str.charat (i);
if (Charmap [_char]! = Undefined) {
Charmap [_Car] = -1;
}autre{
Charmap [_char] = i;
}
}
pour (k en charme) {
if (Charmap [k] <0) {
continuer;
}
if (result.index> Charmap [k]) {
résultat.index = charme [k];
résultat.name = k;
}
}
return result.name;
}
Si vous avez de meilleures idées, donnez-moi un message. Je suis très reconnaissant.