本文介绍一种使用JavaScript查找字符串中第一个不重复字符的算法。通过遍历字符串记录字符索引,利用哈希表标记重复字符,最终筛选出索引最小的非重复字符。该方法逻辑清晰,适用于基础字符串处理场景。
查找首个唯一字符的JavaScript实现
此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达。
//找出字符串中第一个不重复的字符
// firstUniqueChar("vdctdvc"); --> t
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;
}