题解 | #第一个只出现一次的字符#
第一个只出现一次的字符
http://www.nowcoder.com/practice/1c82e8cf713b4bbeb2a5b31cf5b0417c
JavaScript
- 解法一:
创建一个obj,然后同过一个for循环将字符串的每个字符存进去,如果存的这个字符为undefined(还没存进去),则将其置为1,否则+=1。
接着再次for循环字符串将每个字符在obj中寻找,若值为1,则返回位置,找不到则返回-1。function FirstNotRepeatingChar(str) { let obj={}; for(let i = 0; i<str.length; i++){ let key = str.charAt(i) if(obj[key] == undefined){ obj[key] = 1; }else{ obj[key] += 1; } } for(let j=0; j<str.length;j++){ let k = str.charAt(j); if(obj[k] == 1){ return j } } return -1; }
牛客算法题 文章被收录于专栏
牛客算法题记录