剑指 Offer 50. 第一个只出现一次的字符(简单)

通过率 61.3%

题目链接

题目描述:

在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。

示例:

s = "abaccdeff"
返回 "b"

s = ""
返回 " "

限制:

0 <= s 的长度 <= 50000

思路:

遍历数组,判断当前元素的第一个位置和最后一个位置是否都等于当前位置

 1 /*JavaScript*/
 2 /**
 3  * @param {string} s
 4  * @return {character}
 5  */
 6 var firstUniqChar = function(s) {
 7     for(let i=0; i<s.length; i++) {
 8         if(s.indexOf(s[i]) === i && s.lastIndexOf(s[i]) === i) {
 9             return s[i]
10         }
11     }
12     return ' '
13 };

官方解释可以用哈希表,之后再补充吧~

原文地址:https://www.cnblogs.com/wwqzbl/p/15142341.html