此算法僅供參考,小菜基本不懂高深的算法,只能用最樸實的思想去表達。
//找出字符串中第一個不重復的字符 // 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; }