Этот алгоритм предназначен только для справки. Xiaocai в основном не понимает расширенных алгоритмов и может выразить его только с самыми простыми идеями.
Кода -копия выглядит следующим образом:
// Узнайте первый не повторный символ в строке
// FirstUniqueChar ("vdctdvc"); -> т
Функция FirstUniquechar (str) {
var str = str || "",
i = 0,
k = "",
_CHAR = "",
charmap = {},
result = {name: "", index: str.length};
for (i = 0; i <str.length; i ++) {
_CHAR = str.charat (i);
if (charmap [_char]! = не определен) {
charmap [_char] = -1;
}еще{
charmap [_char] = i;
}
}
для (k in charmap) {
if (charmap [k] <0) {
продолжать;
}
if (result.index> charmap [k]) {
result.index = charmap [k];
result.name = k;
}
}
вернуть result.name;
}
Если у вас есть лучшие идеи, пожалуйста, дайте мне сообщение. Я очень благодарен.