Dieser Algorithmus dient nur als Referenz. Xiao Cai versteht grundsätzlich keine fortgeschrittenen Algorithmen und kann sie nur mit den einfachsten Gedanken ausdrücken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | function 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] != undefined){
charMap[_char] = -1;
} else {
charMap[_char] = i;
}
}
for (k in charMap){
if (charMap[k]<0){
continue ;
}
if (result.index>charMap[k]){
result.index = charMap[k];
result.name = k;
}
}
return result.name;
}
|
Nach dem Login kopieren