剑指offer(34)第一个只出现一次的字符
题目描述
在一个字符串(1<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置
题目分析
只需要用map记录字符出现的次数就行,比较简单的题
代码
function FirstNotRepeatingChar(str) { if (str.length < 1 || str.length > 10000) return -1; const map = {}; for (let i = 0; i < str.length; i++) { if (!map[str[i]]) { map[str[i]] = 1; } else { map[str[i]]++; } } for (let i = 0; i < str.length; i++) { if (map[str[i]] === 1) { return i; } } return -1; }